summaryrefslogtreecommitdiffstats
path: root/src/gui/opengl
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/opengl')
-rw-r--r--src/gui/opengl/opengl.pri64
-rw-r--r--src/gui/opengl/qopengl.h156
-rw-r--r--src/gui/opengl/qopengl_p.h6
-rw-r--r--src/gui/opengl/qopenglbuffer.h4
-rw-r--r--src/gui/opengl/qopenglcustomshaderstage_p.h4
-rw-r--r--src/gui/opengl/qopenglengineshadermanager_p.h4
-rw-r--r--src/gui/opengl/qopenglengineshadersource_p.h4
-rw-r--r--src/gui/opengl/qopengles2ext.h1
-rw-r--r--src/gui/opengl/qopenglext.h1578
-rw-r--r--src/gui/opengl/qopenglextensions_p.h4
-rw-r--r--src/gui/opengl/qopenglframebufferobject.h4
-rw-r--r--src/gui/opengl/qopenglfunctions.cpp11
-rw-r--r--src/gui/opengl/qopenglfunctions.h25
-rw-r--r--src/gui/opengl/qopenglfunctions_1_0.cpp141
-rw-r--r--src/gui/opengl/qopenglfunctions_1_0.h1930
-rw-r--r--src/gui/opengl/qopenglfunctions_1_1.cpp167
-rw-r--r--src/gui/opengl/qopenglfunctions_1_1.h2120
-rw-r--r--src/gui/opengl/qopenglfunctions_1_2.cpp193
-rw-r--r--src/gui/opengl/qopenglfunctions_1_2.h2358
-rw-r--r--src/gui/opengl/qopenglfunctions_1_3.cpp219
-rw-r--r--src/gui/opengl/qopenglfunctions_1_3.h2644
-rw-r--r--src/gui/opengl/qopenglfunctions_1_4.cpp245
-rw-r--r--src/gui/opengl/qopenglfunctions_1_4.h2924
-rw-r--r--src/gui/opengl/qopenglfunctions_1_5.cpp258
-rw-r--r--src/gui/opengl/qopenglfunctions_1_5.h3047
-rw-r--r--src/gui/opengl/qopenglfunctions_2_0.cpp284
-rw-r--r--src/gui/opengl/qopenglfunctions_2_0.h3615
-rw-r--r--src/gui/opengl/qopenglfunctions_2_1.cpp297
-rw-r--r--src/gui/opengl/qopenglfunctions_2_1.h3660
-rw-r--r--src/gui/opengl/qopenglfunctions_3_0.cpp323
-rw-r--r--src/gui/opengl/qopenglfunctions_3_0.h4174
-rw-r--r--src/gui/opengl/qopenglfunctions_3_1.cpp242
-rw-r--r--src/gui/opengl/qopenglfunctions_3_1.h1592
-rw-r--r--src/gui/opengl/qopenglfunctions_3_2_compatibility.cpp350
-rw-r--r--src/gui/opengl/qopenglfunctions_3_2_compatibility.h4378
-rw-r--r--src/gui/opengl/qopenglfunctions_3_2_core.cpp256
-rw-r--r--src/gui/opengl/qopenglfunctions_3_2_core.h1711
-rw-r--r--src/gui/opengl/qopenglfunctions_3_3_compatibility.cpp363
-rw-r--r--src/gui/opengl/qopenglfunctions_3_3_compatibility.h4735
-rw-r--r--src/gui/opengl/qopenglfunctions_3_3_core.cpp269
-rw-r--r--src/gui/opengl/qopenglfunctions_3_3_core.h2064
-rw-r--r--src/gui/opengl/qopenglfunctions_4_0_compatibility.cpp376
-rw-r--r--src/gui/opengl/qopenglfunctions_4_0_compatibility.h5020
-rw-r--r--src/gui/opengl/qopenglfunctions_4_0_core.cpp282
-rw-r--r--src/gui/opengl/qopenglfunctions_4_0_core.h2345
-rw-r--r--src/gui/opengl/qopenglfunctions_4_1_compatibility.cpp389
-rw-r--r--src/gui/opengl/qopenglfunctions_4_1_compatibility.h5557
-rw-r--r--src/gui/opengl/qopenglfunctions_4_1_core.cpp295
-rw-r--r--src/gui/opengl/qopenglfunctions_4_1_core.h2878
-rw-r--r--src/gui/opengl/qopenglfunctions_4_2_compatibility.cpp402
-rw-r--r--src/gui/opengl/qopenglfunctions_4_2_compatibility.h5638
-rw-r--r--src/gui/opengl/qopenglfunctions_4_2_core.cpp308
-rw-r--r--src/gui/opengl/qopenglfunctions_4_2_core.h2955
-rw-r--r--src/gui/opengl/qopenglfunctions_4_3_compatibility.cpp415
-rw-r--r--src/gui/opengl/qopenglfunctions_4_3_compatibility.h5845
-rw-r--r--src/gui/opengl/qopenglfunctions_4_3_core.cpp321
-rw-r--r--src/gui/opengl/qopenglfunctions_4_3_core.h3158
-rw-r--r--src/gui/opengl/qopenglfunctions_es2.cpp103
-rw-r--r--src/gui/opengl/qopenglfunctions_es2.h933
-rw-r--r--src/gui/opengl/qopenglpaintdevice.cpp14
-rw-r--r--src/gui/opengl/qopenglpaintdevice.h5
-rw-r--r--src/gui/opengl/qopenglpaintengine.cpp99
-rw-r--r--src/gui/opengl/qopenglpaintengine_p.h7
-rw-r--r--src/gui/opengl/qopenglshadercache_meego_p.h4
-rw-r--r--src/gui/opengl/qopenglshadercache_p.h4
-rw-r--r--src/gui/opengl/qopenglshaderprogram.cpp318
-rw-r--r--src/gui/opengl/qopenglshaderprogram.h23
-rw-r--r--src/gui/opengl/qopengltexturecache.cpp7
-rw-r--r--src/gui/opengl/qopengltexturecache_p.h3
-rw-r--r--src/gui/opengl/qopengltextureglyphcache.cpp44
-rw-r--r--src/gui/opengl/qopenglversionfunctions.cpp1791
-rw-r--r--src/gui/opengl/qopenglversionfunctions.h1364
-rw-r--r--src/gui/opengl/qopenglversionfunctionsfactory.cpp153
-rw-r--r--src/gui/opengl/qopenglversionfunctionsfactory_p.h73
-rw-r--r--src/gui/opengl/qopenglvertexarrayobject.cpp472
-rw-r--r--src/gui/opengl/qopenglvertexarrayobject.h110
76 files changed, 87857 insertions, 278 deletions
diff --git a/src/gui/opengl/opengl.pri b/src/gui/opengl/opengl.pri
index 2256f201d2..0c16e1582d 100644
--- a/src/gui/opengl/opengl.pri
+++ b/src/gui/opengl/opengl.pri
@@ -27,7 +27,10 @@ contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles2) {
opengl/qopenglshadercache_p.h \
opengl/qopenglshadercache_meego_p.h \
opengl/qtriangulator_p.h \
- opengl/qrbtree_p.h
+ opengl/qrbtree_p.h \
+ opengl/qopenglversionfunctions.h \
+ opengl/qopenglversionfunctionsfactory_p.h \
+ opengl/qopenglvertexarrayobject.h
SOURCES += opengl/qopengl.cpp \
opengl/qopenglfunctions.cpp \
@@ -43,6 +46,63 @@ contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles2) {
opengl/qopenglcustomshaderstage.cpp \
opengl/qtriangulatingstroker.cpp \
opengl/qopengltextureglyphcache.cpp \
- opengl/qtriangulator.cpp
+ opengl/qtriangulator.cpp \
+ opengl/qopenglversionfunctions.cpp \
+ opengl/qopenglversionfunctionsfactory.cpp \
+ opengl/qopenglvertexarrayobject.cpp
+
+ !contains(QT_CONFIG, opengles2) {
+ HEADERS += opengl/qopenglfunctions_1_0.h \
+ opengl/qopenglfunctions_1_1.h \
+ opengl/qopenglfunctions_1_2.h \
+ opengl/qopenglfunctions_1_3.h \
+ opengl/qopenglfunctions_1_4.h \
+ opengl/qopenglfunctions_1_5.h \
+ opengl/qopenglfunctions_2_0.h \
+ opengl/qopenglfunctions_2_1.h \
+ opengl/qopenglfunctions_3_0.h \
+ opengl/qopenglfunctions_3_1.h \
+ opengl/qopenglfunctions_3_2_core.h \
+ opengl/qopenglfunctions_3_3_core.h \
+ opengl/qopenglfunctions_4_0_core.h \
+ opengl/qopenglfunctions_4_1_core.h \
+ opengl/qopenglfunctions_4_2_core.h \
+ opengl/qopenglfunctions_4_3_core.h \
+ opengl/qopenglfunctions_3_2_compatibility.h \
+ opengl/qopenglfunctions_3_3_compatibility.h \
+ opengl/qopenglfunctions_4_0_compatibility.h \
+ opengl/qopenglfunctions_4_1_compatibility.h \
+ opengl/qopenglfunctions_4_2_compatibility.h \
+ opengl/qopenglfunctions_4_3_compatibility.h
+
+ SOURCES += opengl/qopenglfunctions_1_0.cpp \
+ opengl/qopenglfunctions_1_1.cpp \
+ opengl/qopenglfunctions_1_2.cpp \
+ opengl/qopenglfunctions_1_3.cpp \
+ opengl/qopenglfunctions_1_4.cpp \
+ opengl/qopenglfunctions_1_5.cpp \
+ opengl/qopenglfunctions_2_0.cpp \
+ opengl/qopenglfunctions_2_1.cpp \
+ opengl/qopenglfunctions_3_0.cpp \
+ opengl/qopenglfunctions_3_1.cpp \
+ opengl/qopenglfunctions_3_2_core.cpp \
+ opengl/qopenglfunctions_3_3_core.cpp \
+ opengl/qopenglfunctions_4_0_core.cpp \
+ opengl/qopenglfunctions_4_1_core.cpp \
+ opengl/qopenglfunctions_4_2_core.cpp \
+ opengl/qopenglfunctions_4_3_core.cpp \
+ opengl/qopenglfunctions_3_2_compatibility.cpp \
+ opengl/qopenglfunctions_3_3_compatibility.cpp \
+ opengl/qopenglfunctions_4_0_compatibility.cpp \
+ opengl/qopenglfunctions_4_1_compatibility.cpp \
+ opengl/qopenglfunctions_4_2_compatibility.cpp \
+ opengl/qopenglfunctions_4_3_compatibility.cpp
+ }
+
+ contains(QT_CONFIG, opengles2) {
+ HEADERS += opengl/qopenglfunctions_es2.h
+
+ SOURCES += opengl/qopenglfunctions_es2.cpp
+ }
}
diff --git a/src/gui/opengl/qopengl.h b/src/gui/opengl/qopengl.h
index 9d29e07319..e4e06ba284 100644
--- a/src/gui/opengl/qopengl.h
+++ b/src/gui/opengl/qopengl.h
@@ -46,8 +46,6 @@
#include <QtCore/qglobal.h>
-QT_BEGIN_HEADER
-
#if defined(QT_OPENGL_ES_2)
# if defined(Q_OS_MAC)
# include <OpenGLES/ES2/gl.h>
@@ -102,18 +100,168 @@ typedef GLfloat GLdouble;
#endif
// Desktops, apart from Mac OS X prior to 10.7 can support OpenGL 3
+// and desktops apart from Mac can support OpenGL 4
#if !defined(QT_OPENGL_ES_2)
# if !defined(Q_OS_MAC) || (defined(Q_OS_MAC) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7)
# define QT_OPENGL_3
+# define QT_OPENGL_3_2
# endif
+#if !defined(Q_OS_MAC)
+# define QT_OPENGL_4
+# define QT_OPENGL_4_3
+#endif
#endif
QT_BEGIN_NAMESPACE
-QT_END_NAMESPACE
+// When all else fails we provide sensible fallbacks - this is needed to
+// allow compilation on OS X 10.6
+#if !defined(QT_OPENGL_ES_2)
+
+// OS X 10.6 doesn't define these which are needed below
+// OS X 10.7 and later defien them in gl3.h
+#ifndef APIENTRY
+#define APIENTRY
+#endif
+#ifndef APIENTRYP
+#define APIENTRYP APIENTRY *
+#endif
+#ifndef GLAPI
+#define GLAPI extern
+#endif
+
+
+// This block is copied from glext.h and defines the types needed by
+// a few extension classes.
+
+#include <stddef.h>
+#ifndef GL_VERSION_2_0
+/* GL type for program/shader text */
+typedef char GLchar;
+#endif
+
+#ifndef GL_VERSION_1_5
+/* GL types for handling large vertex buffer objects */
+typedef ptrdiff_t GLintptr;
+typedef ptrdiff_t GLsizeiptr;
+#endif
+
+#ifndef GL_ARB_vertex_buffer_object
+/* GL types for handling large vertex buffer objects */
+typedef ptrdiff_t GLintptrARB;
+typedef ptrdiff_t GLsizeiptrARB;
+#endif
+
+#ifndef GL_ARB_shader_objects
+/* GL types for program/shader text and shader object handles */
+typedef char GLcharARB;
+typedef unsigned int GLhandleARB;
+#endif
+
+/* GL type for "half" precision (s10e5) float data in host memory */
+#ifndef GL_ARB_half_float_pixel
+typedef unsigned short GLhalfARB;
+#endif
+
+#ifndef GL_NV_half_float
+typedef unsigned short GLhalfNV;
+#endif
+
+#ifndef GLEXT_64_TYPES_DEFINED
+/* This code block is duplicated in glxext.h, so must be protected */
+#define GLEXT_64_TYPES_DEFINED
+/* Define int32_t, int64_t, and uint64_t types for UST/MSC */
+/* (as used in the GL_EXT_timer_query extension). */
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+#include <inttypes.h>
+#elif defined(__sun__) || defined(__digital__)
+#include <inttypes.h>
+#if defined(__STDC__)
+#if defined(__arch64__) || defined(_LP64)
+typedef long int int64_t;
+typedef unsigned long int uint64_t;
+#else
+typedef long long int int64_t;
+typedef unsigned long long int uint64_t;
+#endif /* __arch64__ */
+#endif /* __STDC__ */
+#elif defined( __VMS ) || defined(__sgi)
+#include <inttypes.h>
+#elif defined(__SCO__) || defined(__USLC__)
+#include <stdint.h>
+#elif defined(__UNIXOS2__) || defined(__SOL64__)
+typedef long int int32_t;
+typedef long long int int64_t;
+typedef unsigned long long int uint64_t;
+#elif defined(_WIN32) && defined(__GNUC__)
+#include <stdint.h>
+#elif defined(_WIN32)
+typedef __int32 int32_t;
+typedef __int64 int64_t;
+typedef unsigned __int64 uint64_t;
+#else
+/* Fallback if nothing above works */
+#include <inttypes.h>
+#endif
+#endif
+
+#ifndef GL_EXT_timer_query
+typedef int64_t GLint64EXT;
+typedef uint64_t GLuint64EXT;
+#endif
+
+#ifndef GL_ARB_sync
+typedef int64_t GLint64;
+typedef uint64_t GLuint64;
+typedef struct __GLsync *GLsync;
+#endif
+
+#ifndef GL_ARB_cl_event
+/* These incomplete types let us declare types compatible with OpenCL's cl_context and cl_event */
+struct _cl_context;
+struct _cl_event;
+#endif
+
+#ifndef GL_ARB_debug_output
+typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
+#endif
+
+#ifndef GL_AMD_debug_output
+typedef void (APIENTRY *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
+#endif
+
+#ifndef GL_KHR_debug
+typedef void (APIENTRY *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
+#endif
+
+#ifndef GL_NV_vdpau_interop
+typedef GLintptr GLvdpauSurfaceNV;
+#endif
+
+// End of block copied from glext.h
+#endif
+
+
+// Types that aren't defined in all system's gl.h files.
+typedef ptrdiff_t qopengl_GLintptr;
+typedef ptrdiff_t qopengl_GLsizeiptr;
-QT_END_HEADER
+
+#if defined(APIENTRY) && !defined(QOPENGLF_APIENTRY)
+# define QOPENGLF_APIENTRY APIENTRY
+#endif
+
+# ifndef QOPENGLF_APIENTRYP
+# ifdef QOPENGLF_APIENTRY
+# define QOPENGLF_APIENTRYP QOPENGLF_APIENTRY *
+# else
+# define QOPENGLF_APIENTRY
+# define QOPENGLF_APIENTRYP *
+# endif
+# endif
+
+QT_END_NAMESPACE
#endif // QT_NO_OPENGL
diff --git a/src/gui/opengl/qopengl_p.h b/src/gui/opengl/qopengl_p.h
index 84245fb670..3cf636751a 100644
--- a/src/gui/opengl/qopengl_p.h
+++ b/src/gui/opengl/qopengl_p.h
@@ -46,11 +46,9 @@
#include <private/qopenglcontext_p.h>
#include <QtCore/qset.h>
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
-class QOpenGLExtensionMatcher
+class Q_GUI_EXPORT QOpenGLExtensionMatcher
{
public:
QOpenGLExtensionMatcher();
@@ -68,6 +66,4 @@ private:
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif // QOPENGL_H
diff --git a/src/gui/opengl/qopenglbuffer.h b/src/gui/opengl/qopenglbuffer.h
index 5ce8c3db49..014060086d 100644
--- a/src/gui/opengl/qopenglbuffer.h
+++ b/src/gui/opengl/qopenglbuffer.h
@@ -47,8 +47,6 @@
#include <QtCore/qscopedpointer.h>
#include <QtGui/qopengl.h>
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -128,8 +126,6 @@ private:
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif // QT_NO_OPENGL
#endif
diff --git a/src/gui/opengl/qopenglcustomshaderstage_p.h b/src/gui/opengl/qopenglcustomshaderstage_p.h
index 2accb03fa3..bb671b0d3b 100644
--- a/src/gui/opengl/qopenglcustomshaderstage_p.h
+++ b/src/gui/opengl/qopenglcustomshaderstage_p.h
@@ -55,8 +55,6 @@
#include <QOpenGLShaderProgram>
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -87,7 +85,5 @@ private:
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif
diff --git a/src/gui/opengl/qopenglengineshadermanager_p.h b/src/gui/opengl/qopenglengineshadermanager_p.h
index 462ffbf703..49c03a7fee 100644
--- a/src/gui/opengl/qopenglengineshadermanager_p.h
+++ b/src/gui/opengl/qopenglengineshadermanager_p.h
@@ -228,8 +228,6 @@
#include <private/qopenglcontext_p.h>
#include <private/qopenglcustomshaderstage_p.h>
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -508,6 +506,4 @@ private:
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif //QOPENGLENGINE_SHADER_MANAGER_H
diff --git a/src/gui/opengl/qopenglengineshadersource_p.h b/src/gui/opengl/qopenglengineshadersource_p.h
index f1b1dbe5a6..869bd057f2 100644
--- a/src/gui/opengl/qopenglengineshadersource_p.h
+++ b/src/gui/opengl/qopenglengineshadersource_p.h
@@ -56,8 +56,6 @@
#include "qopenglengineshadermanager_p.h"
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -523,6 +521,4 @@ static const char* const qopenglslRgbMaskFragmentShaderPass2 = "\n\
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif // GLGC_SHADER_SOURCE_H
diff --git a/src/gui/opengl/qopengles2ext.h b/src/gui/opengl/qopengles2ext.h
index 61bfb595cc..6213fab344 100644
--- a/src/gui/opengl/qopengles2ext.h
+++ b/src/gui/opengl/qopengles2ext.h
@@ -3,6 +3,7 @@
#if 0
#pragma qt_no_master_include
+#pragma qt_sync_skip_header_check
#pragma qt_sync_stop_processing
#endif
diff --git a/src/gui/opengl/qopenglext.h b/src/gui/opengl/qopenglext.h
index 5d21cb6eea..e65578caee 100644
--- a/src/gui/opengl/qopenglext.h
+++ b/src/gui/opengl/qopenglext.h
@@ -3,6 +3,7 @@
#if 0
#pragma qt_no_master_include
+#pragma qt_sync_skip_header_check
#pragma qt_sync_stop_processing
#endif
@@ -34,9 +35,9 @@ extern "C" {
*/
/* Header file version number, required by OpenGL ABI for Linux */
-/* glext.h last updated $Date: 2012-06-18 11:26:35 -0700 (Mon, 18 Jun 2012) $ */
+/* glext.h last updated $Date: 2013-02-07 01:42:49 -0800 (Thu, 07 Feb 2013) $ */
/* Current version at http://www.opengl.org/registry/ */
-#define GL_GLEXT_VERSION 82
+#define GL_GLEXT_VERSION 86
/* Function declaration macros - to move into glplatform.h */
#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
@@ -93,9 +94,6 @@ extern "C" {
#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
-#endif
-
-#ifndef GL_VERSION_1_2_DEPRECATED
#define GL_RESCALE_NORMAL 0x803A
#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
#define GL_SINGLE_COLOR 0x81F9
@@ -115,9 +113,6 @@ extern "C" {
#define GL_BLEND_EQUATION 0x8009
#define GL_FUNC_SUBTRACT 0x800A
#define GL_FUNC_REVERSE_SUBTRACT 0x800B
-#endif
-
-#ifndef GL_ARB_imaging_DEPRECATED
#define GL_CONVOLUTION_1D 0x8010
#define GL_CONVOLUTION_2D 0x8011
#define GL_SEPARABLE_2D 0x8012
@@ -244,9 +239,6 @@ extern "C" {
#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
#define GL_CLAMP_TO_BORDER 0x812D
-#endif
-
-#ifndef GL_VERSION_1_3_DEPRECATED
#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
#define GL_MAX_TEXTURE_UNITS 0x84E2
#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
@@ -303,9 +295,6 @@ extern "C" {
#define GL_TEXTURE_DEPTH_SIZE 0x884A
#define GL_TEXTURE_COMPARE_MODE 0x884C
#define GL_TEXTURE_COMPARE_FUNC 0x884D
-#endif
-
-#ifndef GL_VERSION_1_4_DEPRECATED
#define GL_POINT_SIZE_MIN 0x8126
#define GL_POINT_SIZE_MAX 0x8127
#define GL_POINT_DISTANCE_ATTENUATION 0x8129
@@ -359,9 +348,7 @@ extern "C" {
#define GL_DYNAMIC_READ 0x88E9
#define GL_DYNAMIC_COPY 0x88EA
#define GL_SAMPLES_PASSED 0x8914
-#endif
-
-#ifndef GL_VERSION_1_5_DEPRECATED
+#define GL_SRC1_ALPHA 0x8589
#define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896
#define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897
#define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898
@@ -383,7 +370,6 @@ extern "C" {
#define GL_SRC1_RGB 0x8581
#define GL_SRC2_RGB 0x8582
#define GL_SRC0_ALPHA 0x8588
-#define GL_SRC1_ALPHA 0x8589
#define GL_SRC2_ALPHA 0x858A
#endif
@@ -468,9 +454,6 @@ extern "C" {
#define GL_STENCIL_BACK_REF 0x8CA3
#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
-#endif
-
-#ifndef GL_VERSION_2_0_DEPRECATED
#define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643
#define GL_POINT_SPRITE 0x8861
#define GL_COORD_REPLACE 0x8862
@@ -494,9 +477,6 @@ extern "C" {
#define GL_SRGB8_ALPHA8 0x8C43
#define GL_COMPRESSED_SRGB 0x8C48
#define GL_COMPRESSED_SRGB_ALPHA 0x8C49
-#endif
-
-#ifndef GL_VERSION_2_1_DEPRECATED
#define GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F
#define GL_SLUMINANCE_ALPHA 0x8C44
#define GL_SLUMINANCE8_ALPHA8 0x8C45
@@ -731,9 +711,6 @@ extern "C" {
/* reuse GL_RG32UI */
/* Reuse tokens from ARB_vertex_array_object */
/* reuse GL_VERTEX_ARRAY_BINDING */
-#endif
-
-#ifndef GL_VERSION_3_0_DEPRECATED
#define GL_CLAMP_VERTEX_COLOR 0x891A
#define GL_CLAMP_FRAGMENT_COLOR 0x891B
#define GL_ALPHA_INTEGER 0x8D97
@@ -754,7 +731,6 @@ extern "C" {
#define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B
#define GL_TEXTURE_BINDING_BUFFER 0x8C2C
#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D
-#define GL_TEXTURE_BUFFER_FORMAT 0x8C2E
#define GL_TEXTURE_RECTANGLE 0x84F5
#define GL_TEXTURE_BINDING_RECTANGLE 0x84F6
#define GL_PROXY_TEXTURE_RECTANGLE 0x84F7
@@ -1020,6 +996,7 @@ extern "C" {
/* reuse GL_MEDIUM_INT */
/* reuse GL_HIGH_INT */
/* reuse GL_SHADER_COMPILER */
+/* reuse GL_SHADER_BINARY_FORMATS */
/* reuse GL_NUM_SHADER_BINARY_FORMATS */
/* reuse GL_MAX_VERTEX_UNIFORM_VECTORS */
/* reuse GL_MAX_VARYING_VECTORS */
@@ -1169,6 +1146,290 @@ extern "C" {
/* reuse GL_TEXTURE_IMMUTABLE_FORMAT */
#endif
+#ifndef GL_VERSION_4_3
+#define GL_NUM_SHADING_LANGUAGE_VERSIONS 0x82E9
+#define GL_VERTEX_ATTRIB_ARRAY_LONG 0x874E
+/* Reuse tokens from ARB_arrays_of_arrays (none, GLSL only) */
+/* Reuse tokens from ARB_fragment_layer_viewport (none, GLSL only) */
+/* Reuse tokens from ARB_shader_image_size (none, GLSL only) */
+/* Reuse tokens from ARB_ES3_compatibility */
+/* reuse GL_COMPRESSED_RGB8_ETC2 */
+/* reuse GL_COMPRESSED_SRGB8_ETC2 */
+/* reuse GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 */
+/* reuse GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 */
+/* reuse GL_COMPRESSED_RGBA8_ETC2_EAC */
+/* reuse GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC */
+/* reuse GL_COMPRESSED_R11_EAC */
+/* reuse GL_COMPRESSED_SIGNED_R11_EAC */
+/* reuse GL_COMPRESSED_RG11_EAC */
+/* reuse GL_COMPRESSED_SIGNED_RG11_EAC */
+/* reuse GL_PRIMITIVE_RESTART_FIXED_INDEX */
+/* reuse GL_ANY_SAMPLES_PASSED_CONSERVATIVE */
+/* reuse GL_MAX_ELEMENT_INDEX */
+/* Reuse tokens from ARB_clear_buffer_object (none) */
+/* Reuse tokens from ARB_compute_shader */
+/* reuse GL_COMPUTE_SHADER */
+/* reuse GL_MAX_COMPUTE_UNIFORM_BLOCKS */
+/* reuse GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS */
+/* reuse GL_MAX_COMPUTE_IMAGE_UNIFORMS */
+/* reuse GL_MAX_COMPUTE_SHARED_MEMORY_SIZE */
+/* reuse GL_MAX_COMPUTE_UNIFORM_COMPONENTS */
+/* reuse GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS */
+/* reuse GL_MAX_COMPUTE_ATOMIC_COUNTERS */
+/* reuse GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS */
+/* reuse GL_MAX_COMPUTE_LOCAL_INVOCATIONS */
+/* reuse GL_MAX_COMPUTE_WORK_GROUP_COUNT */
+/* reuse GL_MAX_COMPUTE_WORK_GROUP_SIZE */
+/* reuse GL_COMPUTE_LOCAL_WORK_SIZE */
+/* reuse GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER */
+/* reuse GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER */
+/* reuse GL_DISPATCH_INDIRECT_BUFFER */
+/* reuse GL_DISPATCH_INDIRECT_BUFFER_BINDING */
+/* Reuse tokens from ARB_copy_image (none) */
+/* Reuse tokens from KHR_debug */
+/* reuse GL_DEBUG_OUTPUT_SYNCHRONOUS */
+/* reuse GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH */
+/* reuse GL_DEBUG_CALLBACK_FUNCTION */
+/* reuse GL_DEBUG_CALLBACK_USER_PARAM */
+/* reuse GL_DEBUG_SOURCE_API */
+/* reuse GL_DEBUG_SOURCE_WINDOW_SYSTEM */
+/* reuse GL_DEBUG_SOURCE_SHADER_COMPILER */
+/* reuse GL_DEBUG_SOURCE_THIRD_PARTY */
+/* reuse GL_DEBUG_SOURCE_APPLICATION */
+/* reuse GL_DEBUG_SOURCE_OTHER */
+/* reuse GL_DEBUG_TYPE_ERROR */
+/* reuse GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR */
+/* reuse GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR */
+/* reuse GL_DEBUG_TYPE_PORTABILITY */
+/* reuse GL_DEBUG_TYPE_PERFORMANCE */
+/* reuse GL_DEBUG_TYPE_OTHER */
+/* reuse GL_MAX_DEBUG_MESSAGE_LENGTH */
+/* reuse GL_MAX_DEBUG_LOGGED_MESSAGES */
+/* reuse GL_DEBUG_LOGGED_MESSAGES */
+/* reuse GL_DEBUG_SEVERITY_HIGH */
+/* reuse GL_DEBUG_SEVERITY_MEDIUM */
+/* reuse GL_DEBUG_SEVERITY_LOW */
+/* reuse GL_DEBUG_TYPE_MARKER */
+/* reuse GL_DEBUG_TYPE_PUSH_GROUP */
+/* reuse GL_DEBUG_TYPE_POP_GROUP */
+/* reuse GL_DEBUG_SEVERITY_NOTIFICATION */
+/* reuse GL_MAX_DEBUG_GROUP_STACK_DEPTH */
+/* reuse GL_DEBUG_GROUP_STACK_DEPTH */
+/* reuse GL_BUFFER */
+/* reuse GL_SHADER */
+/* reuse GL_PROGRAM */
+/* reuse GL_QUERY */
+/* reuse GL_PROGRAM_PIPELINE */
+/* reuse GL_SAMPLER */
+/* reuse GL_DISPLAY_LIST */
+/* reuse GL_MAX_LABEL_LENGTH */
+/* reuse GL_DEBUG_OUTPUT */
+/* reuse GL_CONTEXT_FLAG_DEBUG_BIT */
+/* reuse GL_STACK_UNDERFLOW */
+/* reuse GL_STACK_OVERFLOW */
+/* Reuse tokens from ARB_explicit_uniform_location */
+/* reuse GL_MAX_UNIFORM_LOCATIONS */
+/* Reuse tokens from ARB_framebuffer_no_attachments */
+/* reuse GL_FRAMEBUFFER_DEFAULT_WIDTH */
+/* reuse GL_FRAMEBUFFER_DEFAULT_HEIGHT */
+/* reuse GL_FRAMEBUFFER_DEFAULT_LAYERS */
+/* reuse GL_FRAMEBUFFER_DEFAULT_SAMPLES */
+/* reuse GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS */
+/* reuse GL_MAX_FRAMEBUFFER_WIDTH */
+/* reuse GL_MAX_FRAMEBUFFER_HEIGHT */
+/* reuse GL_MAX_FRAMEBUFFER_LAYERS */
+/* reuse GL_MAX_FRAMEBUFFER_SAMPLES */
+/* Reuse tokens from ARB_internalformat_query2 */
+/* reuse GL_INTERNALFORMAT_SUPPORTED */
+/* reuse GL_INTERNALFORMAT_PREFERRED */
+/* reuse GL_INTERNALFORMAT_RED_SIZE */
+/* reuse GL_INTERNALFORMAT_GREEN_SIZE */
+/* reuse GL_INTERNALFORMAT_BLUE_SIZE */
+/* reuse GL_INTERNALFORMAT_ALPHA_SIZE */
+/* reuse GL_INTERNALFORMAT_DEPTH_SIZE */
+/* reuse GL_INTERNALFORMAT_STENCIL_SIZE */
+/* reuse GL_INTERNALFORMAT_SHARED_SIZE */
+/* reuse GL_INTERNALFORMAT_RED_TYPE */
+/* reuse GL_INTERNALFORMAT_GREEN_TYPE */
+/* reuse GL_INTERNALFORMAT_BLUE_TYPE */
+/* reuse GL_INTERNALFORMAT_ALPHA_TYPE */
+/* reuse GL_INTERNALFORMAT_DEPTH_TYPE */
+/* reuse GL_INTERNALFORMAT_STENCIL_TYPE */
+/* reuse GL_MAX_WIDTH */
+/* reuse GL_MAX_HEIGHT */
+/* reuse GL_MAX_DEPTH */
+/* reuse GL_MAX_LAYERS */
+/* reuse GL_MAX_COMBINED_DIMENSIONS */
+/* reuse GL_COLOR_COMPONENTS */
+/* reuse GL_DEPTH_COMPONENTS */
+/* reuse GL_STENCIL_COMPONENTS */
+/* reuse GL_COLOR_RENDERABLE */
+/* reuse GL_DEPTH_RENDERABLE */
+/* reuse GL_STENCIL_RENDERABLE */
+/* reuse GL_FRAMEBUFFER_RENDERABLE */
+/* reuse GL_FRAMEBUFFER_RENDERABLE_LAYERED */
+/* reuse GL_FRAMEBUFFER_BLEND */
+/* reuse GL_READ_PIXELS */
+/* reuse GL_READ_PIXELS_FORMAT */
+/* reuse GL_READ_PIXELS_TYPE */
+/* reuse GL_TEXTURE_IMAGE_FORMAT */
+/* reuse GL_TEXTURE_IMAGE_TYPE */
+/* reuse GL_GET_TEXTURE_IMAGE_FORMAT */
+/* reuse GL_GET_TEXTURE_IMAGE_TYPE */
+/* reuse GL_MIPMAP */
+/* reuse GL_MANUAL_GENERATE_MIPMAP */
+/* reuse GL_AUTO_GENERATE_MIPMAP */
+/* reuse GL_COLOR_ENCODING */
+/* reuse GL_SRGB_READ */
+/* reuse GL_SRGB_WRITE */
+/* reuse GL_FILTER */
+/* reuse GL_VERTEX_TEXTURE */
+/* reuse GL_TESS_CONTROL_TEXTURE */
+/* reuse GL_TESS_EVALUATION_TEXTURE */
+/* reuse GL_GEOMETRY_TEXTURE */
+/* reuse GL_FRAGMENT_TEXTURE */
+/* reuse GL_COMPUTE_TEXTURE */
+/* reuse GL_TEXTURE_SHADOW */
+/* reuse GL_TEXTURE_GATHER */
+/* reuse GL_TEXTURE_GATHER_SHADOW */
+/* reuse GL_SHADER_IMAGE_LOAD */
+/* reuse GL_SHADER_IMAGE_STORE */
+/* reuse GL_SHADER_IMAGE_ATOMIC */
+/* reuse GL_IMAGE_TEXEL_SIZE */
+/* reuse GL_IMAGE_COMPATIBILITY_CLASS */
+/* reuse GL_IMAGE_PIXEL_FORMAT */
+/* reuse GL_IMAGE_PIXEL_TYPE */
+/* reuse GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST */
+/* reuse GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST */
+/* reuse GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE */
+/* reuse GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE */
+/* reuse GL_TEXTURE_COMPRESSED_BLOCK_WIDTH */
+/* reuse GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT */
+/* reuse GL_TEXTURE_COMPRESSED_BLOCK_SIZE */
+/* reuse GL_CLEAR_BUFFER */
+/* reuse GL_TEXTURE_VIEW */
+/* reuse GL_VIEW_COMPATIBILITY_CLASS */
+/* reuse GL_FULL_SUPPORT */
+/* reuse GL_CAVEAT_SUPPORT */
+/* reuse GL_IMAGE_CLASS_4_X_32 */
+/* reuse GL_IMAGE_CLASS_2_X_32 */
+/* reuse GL_IMAGE_CLASS_1_X_32 */
+/* reuse GL_IMAGE_CLASS_4_X_16 */
+/* reuse GL_IMAGE_CLASS_2_X_16 */
+/* reuse GL_IMAGE_CLASS_1_X_16 */
+/* reuse GL_IMAGE_CLASS_4_X_8 */
+/* reuse GL_IMAGE_CLASS_2_X_8 */
+/* reuse GL_IMAGE_CLASS_1_X_8 */
+/* reuse GL_IMAGE_CLASS_11_11_10 */
+/* reuse GL_IMAGE_CLASS_10_10_10_2 */
+/* reuse GL_VIEW_CLASS_128_BITS */
+/* reuse GL_VIEW_CLASS_96_BITS */
+/* reuse GL_VIEW_CLASS_64_BITS */
+/* reuse GL_VIEW_CLASS_48_BITS */
+/* reuse GL_VIEW_CLASS_32_BITS */
+/* reuse GL_VIEW_CLASS_24_BITS */
+/* reuse GL_VIEW_CLASS_16_BITS */
+/* reuse GL_VIEW_CLASS_8_BITS */
+/* reuse GL_VIEW_CLASS_S3TC_DXT1_RGB */
+/* reuse GL_VIEW_CLASS_S3TC_DXT1_RGBA */
+/* reuse GL_VIEW_CLASS_S3TC_DXT3_RGBA */
+/* reuse GL_VIEW_CLASS_S3TC_DXT5_RGBA */
+/* reuse GL_VIEW_CLASS_RGTC1_RED */
+/* reuse GL_VIEW_CLASS_RGTC2_RG */
+/* reuse GL_VIEW_CLASS_BPTC_UNORM */
+/* reuse GL_VIEW_CLASS_BPTC_FLOAT */
+/* Reuse tokens from ARB_invalidate_subdata (none) */
+/* Reuse tokens from ARB_multi_draw_indirect (none) */
+/* Reuse tokens from ARB_program_interface_query */
+/* reuse GL_UNIFORM */
+/* reuse GL_UNIFORM_BLOCK */
+/* reuse GL_PROGRAM_INPUT */
+/* reuse GL_PROGRAM_OUTPUT */
+/* reuse GL_BUFFER_VARIABLE */
+/* reuse GL_SHADER_STORAGE_BLOCK */
+/* reuse GL_VERTEX_SUBROUTINE */
+/* reuse GL_TESS_CONTROL_SUBROUTINE */
+/* reuse GL_TESS_EVALUATION_SUBROUTINE */
+/* reuse GL_GEOMETRY_SUBROUTINE */
+/* reuse GL_FRAGMENT_SUBROUTINE */
+/* reuse GL_COMPUTE_SUBROUTINE */
+/* reuse GL_VERTEX_SUBROUTINE_UNIFORM */
+/* reuse GL_TESS_CONTROL_SUBROUTINE_UNIFORM */
+/* reuse GL_TESS_EVALUATION_SUBROUTINE_UNIFORM */
+/* reuse GL_GEOMETRY_SUBROUTINE_UNIFORM */
+/* reuse GL_FRAGMENT_SUBROUTINE_UNIFORM */
+/* reuse GL_COMPUTE_SUBROUTINE_UNIFORM */
+/* reuse GL_TRANSFORM_FEEDBACK_VARYING */
+/* reuse GL_ACTIVE_RESOURCES */
+/* reuse GL_MAX_NAME_LENGTH */
+/* reuse GL_MAX_NUM_ACTIVE_VARIABLES */
+/* reuse GL_MAX_NUM_COMPATIBLE_SUBROUTINES */
+/* reuse GL_NAME_LENGTH */
+/* reuse GL_TYPE */
+/* reuse GL_ARRAY_SIZE */
+/* reuse GL_OFFSET */
+/* reuse GL_BLOCK_INDEX */
+/* reuse GL_ARRAY_STRIDE */
+/* reuse GL_MATRIX_STRIDE */
+/* reuse GL_IS_ROW_MAJOR */
+/* reuse GL_ATOMIC_COUNTER_BUFFER_INDEX */
+/* reuse GL_BUFFER_BINDING */
+/* reuse GL_BUFFER_DATA_SIZE */
+/* reuse GL_NUM_ACTIVE_VARIABLES */
+/* reuse GL_ACTIVE_VARIABLES */
+/* reuse GL_REFERENCED_BY_VERTEX_SHADER */
+/* reuse GL_REFERENCED_BY_TESS_CONTROL_SHADER */
+/* reuse GL_REFERENCED_BY_TESS_EVALUATION_SHADER */
+/* reuse GL_REFERENCED_BY_GEOMETRY_SHADER */
+/* reuse GL_REFERENCED_BY_FRAGMENT_SHADER */
+/* reuse GL_REFERENCED_BY_COMPUTE_SHADER */
+/* reuse GL_TOP_LEVEL_ARRAY_SIZE */
+/* reuse GL_TOP_LEVEL_ARRAY_STRIDE */
+/* reuse GL_LOCATION */
+/* reuse GL_LOCATION_INDEX */
+/* reuse GL_IS_PER_PATCH */
+/* Reuse tokens from ARB_robust_buffer_access_behavior (none) */
+/* Reuse tokens from ARB_shader_storage_buffer_object */
+/* reuse GL_SHADER_STORAGE_BUFFER */
+/* reuse GL_SHADER_STORAGE_BUFFER_BINDING */
+/* reuse GL_SHADER_STORAGE_BUFFER_START */
+/* reuse GL_SHADER_STORAGE_BUFFER_SIZE */
+/* reuse GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS */
+/* reuse GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS */
+/* reuse GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS */
+/* reuse GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS */
+/* reuse GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS */
+/* reuse GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS */
+/* reuse GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS */
+/* reuse GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS */
+/* reuse GL_MAX_SHADER_STORAGE_BLOCK_SIZE */
+/* reuse GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT */
+/* reuse GL_SHADER_STORAGE_BARRIER_BIT */
+/* reuse GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES */
+/* Reuse tokens from ARB_stencil_texturing */
+/* reuse GL_DEPTH_STENCIL_TEXTURE_MODE */
+/* Reuse tokens from ARB_texture_buffer_range */
+/* reuse GL_TEXTURE_BUFFER_OFFSET */
+/* reuse GL_TEXTURE_BUFFER_SIZE */
+/* reuse GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT */
+/* Reuse tokens from ARB_texture_query_levels (none) */
+/* Reuse tokens from ARB_texture_storage_multisample (none) */
+/* Reuse tokens from ARB_texture_view */
+/* reuse GL_TEXTURE_VIEW_MIN_LEVEL */
+/* reuse GL_TEXTURE_VIEW_NUM_LEVELS */
+/* reuse GL_TEXTURE_VIEW_MIN_LAYER */
+/* reuse GL_TEXTURE_VIEW_NUM_LAYERS */
+/* reuse GL_TEXTURE_IMMUTABLE_LEVELS */
+/* Reuse tokens from ARB_vertex_attrib_binding */
+/* reuse GL_VERTEX_ATTRIB_BINDING */
+/* reuse GL_VERTEX_ATTRIB_RELATIVE_OFFSET */
+/* reuse GL_VERTEX_BINDING_DIVISOR */
+/* reuse GL_VERTEX_BINDING_OFFSET */
+/* reuse GL_VERTEX_BINDING_STRIDE */
+/* reuse GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET */
+/* reuse GL_MAX_VERTEX_ATTRIB_BINDINGS */
+#endif
+
#ifndef GL_ARB_multitexture
#define GL_TEXTURE0_ARB 0x84C0
#define GL_TEXTURE1_ARB 0x84C1
@@ -1751,9 +2012,6 @@ extern "C" {
#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
#define GL_MAX_SAMPLES 0x8D57
-#endif
-
-#ifndef GL_ARB_framebuffer_object_DEPRECATED
#define GL_INDEX 0x8222
#define GL_TEXTURE_LUMINANCE_TYPE 0x8C14
#define GL_TEXTURE_INTENSITY_TYPE 0x8C15
@@ -1985,6 +2243,7 @@ extern "C" {
#ifndef GL_ARB_texture_gather
#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5E
#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5F
+#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F
#endif
#ifndef GL_ARB_texture_query_lod
@@ -2162,6 +2421,7 @@ extern "C" {
#define GL_MEDIUM_INT 0x8DF4
#define GL_HIGH_INT 0x8DF5
#define GL_SHADER_COMPILER 0x8DFA
+#define GL_SHADER_BINARY_FORMATS 0x8DF8
#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9
#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
#define GL_MAX_VARYING_VECTORS 0x8DFC
@@ -2404,6 +2664,386 @@ extern "C" {
#define GL_TEXTURE_IMMUTABLE_FORMAT 0x912F
#endif
+#ifndef GL_KHR_texture_compression_astc_ldr
+#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
+#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
+#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
+#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
+#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
+#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
+#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
+#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
+#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
+#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
+#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
+#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
+#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
+#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
+#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
+#endif
+
+#ifndef GL_KHR_debug
+#define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242
+#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243
+#define GL_DEBUG_CALLBACK_FUNCTION 0x8244
+#define GL_DEBUG_CALLBACK_USER_PARAM 0x8245
+#define GL_DEBUG_SOURCE_API 0x8246
+#define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247
+#define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248
+#define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249
+#define GL_DEBUG_SOURCE_APPLICATION 0x824A
+#define GL_DEBUG_SOURCE_OTHER 0x824B
+#define GL_DEBUG_TYPE_ERROR 0x824C
+#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D
+#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E
+#define GL_DEBUG_TYPE_PORTABILITY 0x824F
+#define GL_DEBUG_TYPE_PERFORMANCE 0x8250
+#define GL_DEBUG_TYPE_OTHER 0x8251
+#define GL_DEBUG_TYPE_MARKER 0x8268
+#define GL_DEBUG_TYPE_PUSH_GROUP 0x8269
+#define GL_DEBUG_TYPE_POP_GROUP 0x826A
+#define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B
+#define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C
+#define GL_DEBUG_GROUP_STACK_DEPTH 0x826D
+#define GL_BUFFER 0x82E0
+#define GL_SHADER 0x82E1
+#define GL_PROGRAM 0x82E2
+#define GL_QUERY 0x82E3
+#define GL_PROGRAM_PIPELINE 0x82E4
+#define GL_SAMPLER 0x82E6
+#define GL_DISPLAY_LIST 0x82E7
+/* DISPLAY_LIST used in compatibility profile only */
+#define GL_MAX_LABEL_LENGTH 0x82E8
+#define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143
+#define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144
+#define GL_DEBUG_LOGGED_MESSAGES 0x9145
+#define GL_DEBUG_SEVERITY_HIGH 0x9146
+#define GL_DEBUG_SEVERITY_MEDIUM 0x9147
+#define GL_DEBUG_SEVERITY_LOW 0x9148
+#define GL_DEBUG_OUTPUT 0x92E0
+#define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002
+/* reuse GL_STACK_UNDERFLOW */
+/* reuse GL_STACK_OVERFLOW */
+#endif
+
+#ifndef GL_ARB_arrays_of_arrays
+#endif
+
+#ifndef GL_ARB_clear_buffer_object
+#endif
+
+#ifndef GL_ARB_compute_shader
+#define GL_COMPUTE_SHADER 0x91B9
+#define GL_MAX_COMPUTE_UNIFORM_BLOCKS 0x91BB
+#define GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS 0x91BC
+#define GL_MAX_COMPUTE_IMAGE_UNIFORMS 0x91BD
+#define GL_MAX_COMPUTE_SHARED_MEMORY_SIZE 0x8262
+#define GL_MAX_COMPUTE_UNIFORM_COMPONENTS 0x8263
+#define GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS 0x8264
+#define GL_MAX_COMPUTE_ATOMIC_COUNTERS 0x8265
+#define GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS 0x8266
+#define GL_MAX_COMPUTE_LOCAL_INVOCATIONS 0x90EB
+#define GL_MAX_COMPUTE_WORK_GROUP_COUNT 0x91BE
+#define GL_MAX_COMPUTE_WORK_GROUP_SIZE 0x91BF
+#define GL_COMPUTE_LOCAL_WORK_SIZE 0x8267
+#define GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER 0x90EC
+#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER 0x90ED
+#define GL_DISPATCH_INDIRECT_BUFFER 0x90EE
+#define GL_DISPATCH_INDIRECT_BUFFER_BINDING 0x90EF
+#define GL_COMPUTE_SHADER_BIT 0x00000020
+#endif
+
+#ifndef GL_ARB_copy_image
+#endif
+
+#ifndef GL_ARB_texture_view
+#define GL_TEXTURE_VIEW_MIN_LEVEL 0x82DB
+#define GL_TEXTURE_VIEW_NUM_LEVELS 0x82DC
+#define GL_TEXTURE_VIEW_MIN_LAYER 0x82DD
+#define GL_TEXTURE_VIEW_NUM_LAYERS 0x82DE
+#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF
+#endif
+
+#ifndef GL_ARB_vertex_attrib_binding
+#define GL_VERTEX_ATTRIB_BINDING 0x82D4
+#define GL_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D5
+#define GL_VERTEX_BINDING_DIVISOR 0x82D6
+#define GL_VERTEX_BINDING_OFFSET 0x82D7
+#define GL_VERTEX_BINDING_STRIDE 0x82D8
+#define GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D9
+#define GL_MAX_VERTEX_ATTRIB_BINDINGS 0x82DA
+#endif
+
+#ifndef GL_ARB_robustness_isolation
+#endif
+
+#ifndef GL_ARB_ES3_compatibility
+#define GL_COMPRESSED_RGB8_ETC2 0x9274
+#define GL_COMPRESSED_SRGB8_ETC2 0x9275
+#define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9276
+#define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9277
+#define GL_COMPRESSED_RGBA8_ETC2_EAC 0x9278
+#define GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC 0x9279
+#define GL_COMPRESSED_R11_EAC 0x9270
+#define GL_COMPRESSED_SIGNED_R11_EAC 0x9271
+#define GL_COMPRESSED_RG11_EAC 0x9272
+#define GL_COMPRESSED_SIGNED_RG11_EAC 0x9273
+#define GL_PRIMITIVE_RESTART_FIXED_INDEX 0x8D69
+#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE 0x8D6A
+#define GL_MAX_ELEMENT_INDEX 0x8D6B
+#endif
+
+#ifndef GL_ARB_explicit_uniform_location
+#define GL_MAX_UNIFORM_LOCATIONS 0x826E
+#endif
+
+#ifndef GL_ARB_fragment_layer_viewport
+#endif
+
+#ifndef GL_ARB_framebuffer_no_attachments
+#define GL_FRAMEBUFFER_DEFAULT_WIDTH 0x9310
+#define GL_FRAMEBUFFER_DEFAULT_HEIGHT 0x9311
+#define GL_FRAMEBUFFER_DEFAULT_LAYERS 0x9312
+#define GL_FRAMEBUFFER_DEFAULT_SAMPLES 0x9313
+#define GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS 0x9314
+#define GL_MAX_FRAMEBUFFER_WIDTH 0x9315
+#define GL_MAX_FRAMEBUFFER_HEIGHT 0x9316
+#define GL_MAX_FRAMEBUFFER_LAYERS 0x9317
+#define GL_MAX_FRAMEBUFFER_SAMPLES 0x9318
+#endif
+
+#ifndef GL_ARB_internalformat_query2
+/* reuse GL_IMAGE_FORMAT_COMPATIBILITY_TYPE */
+/* reuse GL_NUM_SAMPLE_COUNTS */
+/* reuse GL_RENDERBUFFER */
+/* reuse GL_SAMPLES */
+/* reuse GL_TEXTURE_1D */
+/* reuse GL_TEXTURE_1D_ARRAY */
+/* reuse GL_TEXTURE_2D */
+/* reuse GL_TEXTURE_2D_ARRAY */
+/* reuse GL_TEXTURE_3D */
+/* reuse GL_TEXTURE_CUBE_MAP */
+/* reuse GL_TEXTURE_CUBE_MAP_ARRAY */
+/* reuse GL_TEXTURE_RECTANGLE */
+/* reuse GL_TEXTURE_BUFFER */
+/* reuse GL_TEXTURE_2D_MULTISAMPLE */
+/* reuse GL_TEXTURE_2D_MULTISAMPLE_ARRAY */
+/* reuse GL_TEXTURE_COMPRESSED */
+#define GL_INTERNALFORMAT_SUPPORTED 0x826F
+#define GL_INTERNALFORMAT_PREFERRED 0x8270
+#define GL_INTERNALFORMAT_RED_SIZE 0x8271
+#define GL_INTERNALFORMAT_GREEN_SIZE 0x8272
+#define GL_INTERNALFORMAT_BLUE_SIZE 0x8273
+#define GL_INTERNALFORMAT_ALPHA_SIZE 0x8274
+#define GL_INTERNALFORMAT_DEPTH_SIZE 0x8275
+#define GL_INTERNALFORMAT_STENCIL_SIZE 0x8276
+#define GL_INTERNALFORMAT_SHARED_SIZE 0x8277
+#define GL_INTERNALFORMAT_RED_TYPE 0x8278
+#define GL_INTERNALFORMAT_GREEN_TYPE 0x8279
+#define GL_INTERNALFORMAT_BLUE_TYPE 0x827A
+#define GL_INTERNALFORMAT_ALPHA_TYPE 0x827B
+#define GL_INTERNALFORMAT_DEPTH_TYPE 0x827C
+#define GL_INTERNALFORMAT_STENCIL_TYPE 0x827D
+#define GL_MAX_WIDTH 0x827E
+#define GL_MAX_HEIGHT 0x827F
+#define GL_MAX_DEPTH 0x8280
+#define GL_MAX_LAYERS 0x8281
+#define GL_MAX_COMBINED_DIMENSIONS 0x8282
+#define GL_COLOR_COMPONENTS 0x8283
+#define GL_DEPTH_COMPONENTS 0x8284
+#define GL_STENCIL_COMPONENTS 0x8285
+#define GL_COLOR_RENDERABLE 0x8286
+#define GL_DEPTH_RENDERABLE 0x8287
+#define GL_STENCIL_RENDERABLE 0x8288
+#define GL_FRAMEBUFFER_RENDERABLE 0x8289
+#define GL_FRAMEBUFFER_RENDERABLE_LAYERED 0x828A
+#define GL_FRAMEBUFFER_BLEND 0x828B
+#define GL_READ_PIXELS 0x828C
+#define GL_READ_PIXELS_FORMAT 0x828D
+#define GL_READ_PIXELS_TYPE 0x828E
+#define GL_TEXTURE_IMAGE_FORMAT 0x828F
+#define GL_TEXTURE_IMAGE_TYPE 0x8290
+#define GL_GET_TEXTURE_IMAGE_FORMAT 0x8291
+#define GL_GET_TEXTURE_IMAGE_TYPE 0x8292
+#define GL_MIPMAP 0x8293
+#define GL_MANUAL_GENERATE_MIPMAP 0x8294
+#define GL_AUTO_GENERATE_MIPMAP 0x8295
+#define GL_COLOR_ENCODING 0x8296
+#define GL_SRGB_READ 0x8297
+#define GL_SRGB_WRITE 0x8298
+#define GL_SRGB_DECODE_ARB 0x8299
+#define GL_FILTER 0x829A
+#define GL_VERTEX_TEXTURE 0x829B
+#define GL_TESS_CONTROL_TEXTURE 0x829C
+#define GL_TESS_EVALUATION_TEXTURE 0x829D
+#define GL_GEOMETRY_TEXTURE 0x829E
+#define GL_FRAGMENT_TEXTURE 0x829F
+#define GL_COMPUTE_TEXTURE 0x82A0
+#define GL_TEXTURE_SHADOW 0x82A1
+#define GL_TEXTURE_GATHER 0x82A2
+#define GL_TEXTURE_GATHER_SHADOW 0x82A3
+#define GL_SHADER_IMAGE_LOAD 0x82A4
+#define GL_SHADER_IMAGE_STORE 0x82A5
+#define GL_SHADER_IMAGE_ATOMIC 0x82A6
+#define GL_IMAGE_TEXEL_SIZE 0x82A7
+#define GL_IMAGE_COMPATIBILITY_CLASS 0x82A8
+#define GL_IMAGE_PIXEL_FORMAT 0x82A9
+#define GL_IMAGE_PIXEL_TYPE 0x82AA
+#define GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST 0x82AC
+#define GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST 0x82AD
+#define GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE 0x82AE
+#define GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE 0x82AF
+#define GL_TEXTURE_COMPRESSED_BLOCK_WIDTH 0x82B1
+#define GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT 0x82B2
+#define GL_TEXTURE_COMPRESSED_BLOCK_SIZE 0x82B3
+#define GL_CLEAR_BUFFER 0x82B4
+#define GL_TEXTURE_VIEW 0x82B5
+#define GL_VIEW_COMPATIBILITY_CLASS 0x82B6
+#define GL_FULL_SUPPORT 0x82B7
+#define GL_CAVEAT_SUPPORT 0x82B8
+#define GL_IMAGE_CLASS_4_X_32 0x82B9
+#define GL_IMAGE_CLASS_2_X_32 0x82BA
+#define GL_IMAGE_CLASS_1_X_32 0x82BB
+#define GL_IMAGE_CLASS_4_X_16 0x82BC
+#define GL_IMAGE_CLASS_2_X_16 0x82BD
+#define GL_IMAGE_CLASS_1_X_16 0x82BE
+#define GL_IMAGE_CLASS_4_X_8 0x82BF
+#define GL_IMAGE_CLASS_2_X_8 0x82C0
+#define GL_IMAGE_CLASS_1_X_8 0x82C1
+#define GL_IMAGE_CLASS_11_11_10 0x82C2
+#define GL_IMAGE_CLASS_10_10_10_2 0x82C3
+#define GL_VIEW_CLASS_128_BITS 0x82C4
+#define GL_VIEW_CLASS_96_BITS 0x82C5
+#define GL_VIEW_CLASS_64_BITS 0x82C6
+#define GL_VIEW_CLASS_48_BITS 0x82C7
+#define GL_VIEW_CLASS_32_BITS 0x82C8
+#define GL_VIEW_CLASS_24_BITS 0x82C9
+#define GL_VIEW_CLASS_16_BITS 0x82CA
+#define GL_VIEW_CLASS_8_BITS 0x82CB
+#define GL_VIEW_CLASS_S3TC_DXT1_RGB 0x82CC
+#define GL_VIEW_CLASS_S3TC_DXT1_RGBA 0x82CD
+#define GL_VIEW_CLASS_S3TC_DXT3_RGBA 0x82CE
+#define GL_VIEW_CLASS_S3TC_DXT5_RGBA 0x82CF
+#define GL_VIEW_CLASS_RGTC1_RED 0x82D0
+#define GL_VIEW_CLASS_RGTC2_RG 0x82D1
+#define GL_VIEW_CLASS_BPTC_UNORM 0x82D2
+#define GL_VIEW_CLASS_BPTC_FLOAT 0x82D3
+#endif
+
+#ifndef GL_ARB_invalidate_subdata
+#endif
+
+#ifndef GL_ARB_multi_draw_indirect
+#endif
+
+#ifndef GL_ARB_program_interface_query
+#define GL_UNIFORM 0x92E1
+#define GL_UNIFORM_BLOCK 0x92E2
+#define GL_PROGRAM_INPUT 0x92E3
+#define GL_PROGRAM_OUTPUT 0x92E4
+#define GL_BUFFER_VARIABLE 0x92E5
+#define GL_SHADER_STORAGE_BLOCK 0x92E6
+/* reuse GL_ATOMIC_COUNTER_BUFFER */
+#define GL_VERTEX_SUBROUTINE 0x92E8
+#define GL_TESS_CONTROL_SUBROUTINE 0x92E9
+#define GL_TESS_EVALUATION_SUBROUTINE 0x92EA
+#define GL_GEOMETRY_SUBROUTINE 0x92EB
+#define GL_FRAGMENT_SUBROUTINE 0x92EC
+#define GL_COMPUTE_SUBROUTINE 0x92ED
+#define GL_VERTEX_SUBROUTINE_UNIFORM 0x92EE
+#define GL_TESS_CONTROL_SUBROUTINE_UNIFORM 0x92EF
+#define GL_TESS_EVALUATION_SUBROUTINE_UNIFORM 0x92F0
+#define GL_GEOMETRY_SUBROUTINE_UNIFORM 0x92F1
+#define GL_FRAGMENT_SUBROUTINE_UNIFORM 0x92F2
+#define GL_COMPUTE_SUBROUTINE_UNIFORM 0x92F3
+#define GL_TRANSFORM_FEEDBACK_VARYING 0x92F4
+#define GL_ACTIVE_RESOURCES 0x92F5
+#define GL_MAX_NAME_LENGTH 0x92F6
+#define GL_MAX_NUM_ACTIVE_VARIABLES 0x92F7
+#define GL_MAX_NUM_COMPATIBLE_SUBROUTINES 0x92F8
+#define GL_NAME_LENGTH 0x92F9
+#define GL_TYPE 0x92FA
+#define GL_ARRAY_SIZE 0x92FB
+#define GL_OFFSET 0x92FC
+#define GL_BLOCK_INDEX 0x92FD
+#define GL_ARRAY_STRIDE 0x92FE
+#define GL_MATRIX_STRIDE 0x92FF
+#define GL_IS_ROW_MAJOR 0x9300
+#define GL_ATOMIC_COUNTER_BUFFER_INDEX 0x9301
+#define GL_BUFFER_BINDING 0x9302
+#define GL_BUFFER_DATA_SIZE 0x9303
+#define GL_NUM_ACTIVE_VARIABLES 0x9304
+#define GL_ACTIVE_VARIABLES 0x9305
+#define GL_REFERENCED_BY_VERTEX_SHADER 0x9306
+#define GL_REFERENCED_BY_TESS_CONTROL_SHADER 0x9307
+#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER 0x9308
+#define GL_REFERENCED_BY_GEOMETRY_SHADER 0x9309
+#define GL_REFERENCED_BY_FRAGMENT_SHADER 0x930A
+#define GL_REFERENCED_BY_COMPUTE_SHADER 0x930B
+#define GL_TOP_LEVEL_ARRAY_SIZE 0x930C
+#define GL_TOP_LEVEL_ARRAY_STRIDE 0x930D
+#define GL_LOCATION 0x930E
+#define GL_LOCATION_INDEX 0x930F
+#define GL_IS_PER_PATCH 0x92E7
+/* reuse GL_NUM_COMPATIBLE_SUBROUTINES */
+/* reuse GL_COMPATIBLE_SUBROUTINES */
+#endif
+
+#ifndef GL_ARB_robust_buffer_access_behavior
+#endif
+
+#ifndef GL_ARB_shader_image_size
+#endif
+
+#ifndef GL_ARB_shader_storage_buffer_object
+#define GL_SHADER_STORAGE_BUFFER 0x90D2
+#define GL_SHADER_STORAGE_BUFFER_BINDING 0x90D3
+#define GL_SHADER_STORAGE_BUFFER_START 0x90D4
+#define GL_SHADER_STORAGE_BUFFER_SIZE 0x90D5
+#define GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS 0x90D6
+#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS 0x90D7
+#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS 0x90D8
+#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS 0x90D9
+#define GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS 0x90DA
+#define GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS 0x90DB
+#define GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS 0x90DC
+#define GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS 0x90DD
+#define GL_MAX_SHADER_STORAGE_BLOCK_SIZE 0x90DE
+#define GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT 0x90DF
+#define GL_SHADER_STORAGE_BARRIER_BIT 0x2000
+#define GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS
+/* reuse GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS */
+#endif
+
+#ifndef GL_ARB_stencil_texturing
+#define GL_DEPTH_STENCIL_TEXTURE_MODE 0x90EA
+#endif
+
+#ifndef GL_ARB_texture_buffer_range
+#define GL_TEXTURE_BUFFER_OFFSET 0x919D
+#define GL_TEXTURE_BUFFER_SIZE 0x919E
+#define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT 0x919F
+#endif
+
+#ifndef GL_ARB_texture_query_levels
+#endif
+
+#ifndef GL_ARB_texture_storage_multisample
+#endif
+
#ifndef GL_EXT_abgr
#define GL_ABGR_EXT 0x8000
#endif
@@ -4260,6 +4900,8 @@ extern "C" {
#define GL_RGB4_S3TC 0x83A1
#define GL_RGBA_S3TC 0x83A2
#define GL_RGBA4_S3TC 0x83A3
+#define GL_RGBA_DXT5_S3TC 0x83A4
+#define GL_RGBA4_DXT5_S3TC 0x83A5
#endif
#ifndef GL_ATI_draw_buffers
@@ -4283,7 +4925,7 @@ extern "C" {
#endif
#ifndef GL_ATI_pixel_format_float
-#define GL_TYPE_RGBA_FLOAT_ATI 0x8820
+#define GL_RGBA_FLOAT_MODE_ATI 0x8820
#define GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
#endif
@@ -4373,11 +5015,37 @@ extern "C" {
#ifndef GL_ATI_vertex_attrib_array_object
#endif
+#ifndef GL_OES_byte_coordinates
+#endif
+
+#ifndef GL_OES_fixed_point
+#define GL_FIXED_OES 0x140C
+#endif
+
+#ifndef GL_OES_single_precision
+#endif
+
+#ifndef GL_OES_compressed_paletted_texture
+#define GL_PALETTE4_RGB8_OES 0x8B90
+#define GL_PALETTE4_RGBA8_OES 0x8B91
+#define GL_PALETTE4_R5_G6_B5_OES 0x8B92
+#define GL_PALETTE4_RGBA4_OES 0x8B93
+#define GL_PALETTE4_RGB5_A1_OES 0x8B94
+#define GL_PALETTE8_RGB8_OES 0x8B95
+#define GL_PALETTE8_RGBA8_OES 0x8B96
+#define GL_PALETTE8_R5_G6_B5_OES 0x8B97
+#define GL_PALETTE8_RGBA4_OES 0x8B98
+#define GL_PALETTE8_RGB5_A1_OES 0x8B99
+#endif
+
#ifndef GL_OES_read_format
#define GL_IMPLEMENTATION_COLOR_READ_TYPE_OES 0x8B9A
#define GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES 0x8B9B
#endif
+#ifndef GL_OES_query_matrix
+#endif
+
#ifndef GL_EXT_depth_bounds_test
#define GL_DEPTH_BOUNDS_TEST_EXT 0x8890
#define GL_DEPTH_BOUNDS_EXT 0x8891
@@ -4743,7 +5411,7 @@ extern "C" {
#define GL_PRIMITIVES_GENERATED_NV 0x8C87
#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV 0x8C88
#define GL_RASTERIZER_DISCARD_NV 0x8C89
-#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_ATTRIBS_NV 0x8C8A
+#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A
#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV 0x8C8B
#define GL_INTERLEAVED_ATTRIBS_NV 0x8C8C
#define GL_SEPARATE_ATTRIBS_NV 0x8C8D
@@ -5260,6 +5928,7 @@ extern "C" {
#endif
#ifndef GL_AMD_debug_output
+#define GL_MAX_DEBUG_MESSAGE_LENGTH_AMD 0x9143
#define GL_MAX_DEBUG_LOGGED_MESSAGES_AMD 0x9144
#define GL_DEBUG_LOGGED_MESSAGES_AMD 0x9145
#define GL_DEBUG_SEVERITY_HIGH_AMD 0x9146
@@ -5344,27 +6013,19 @@ extern "C" {
#define GL_PATH_FILL_COVER_MODE_NV 0x9082
#define GL_PATH_STROKE_COVER_MODE_NV 0x9083
#define GL_PATH_STROKE_MASK_NV 0x9084
-#define GL_PATH_SAMPLE_QUALITY_NV 0x9085
-#define GL_PATH_STROKE_BOUND_NV 0x9086
-#define GL_PATH_STROKE_OVERSAMPLE_COUNT_NV 0x9087
#define GL_COUNT_UP_NV 0x9088
#define GL_COUNT_DOWN_NV 0x9089
#define GL_PATH_OBJECT_BOUNDING_BOX_NV 0x908A
#define GL_CONVEX_HULL_NV 0x908B
-#define GL_MULTI_HULLS_NV 0x908C
#define GL_BOUNDING_BOX_NV 0x908D
#define GL_TRANSLATE_X_NV 0x908E
#define GL_TRANSLATE_Y_NV 0x908F
#define GL_TRANSLATE_2D_NV 0x9090
#define GL_TRANSLATE_3D_NV 0x9091
#define GL_AFFINE_2D_NV 0x9092
-#define GL_PROJECTIVE_2D_NV 0x9093
#define GL_AFFINE_3D_NV 0x9094
-#define GL_PROJECTIVE_3D_NV 0x9095
#define GL_TRANSPOSE_AFFINE_2D_NV 0x9096
-#define GL_TRANSPOSE_PROJECTIVE_2D_NV 0x9097
#define GL_TRANSPOSE_AFFINE_3D_NV 0x9098
-#define GL_TRANSPOSE_PROJECTIVE_3D_NV 0x9099
#define GL_UTF8_NV 0x909A
#define GL_UTF16_NV 0x909B
#define GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV 0x909C
@@ -5444,20 +6105,23 @@ extern "C" {
#define GL_GLYPH_VERTICAL_BEARING_X_BIT_NV 0x20
#define GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV 0x40
#define GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV 0x80
-#define GL_GLYPH_HAS_KERNING_NV 0x100
-#define GL_FONT_X_MIN_BOUNDS_NV 0x00010000
-#define GL_FONT_Y_MIN_BOUNDS_NV 0x00020000
-#define GL_FONT_X_MAX_BOUNDS_NV 0x00040000
-#define GL_FONT_Y_MAX_BOUNDS_NV 0x00080000
-#define GL_FONT_UNITS_PER_EM_NV 0x00100000
-#define GL_FONT_ASCENDER_NV 0x00200000
-#define GL_FONT_DESCENDER_NV 0x00400000
-#define GL_FONT_HEIGHT_NV 0x00800000
-#define GL_FONT_MAX_ADVANCE_WIDTH_NV 0x01000000
-#define GL_FONT_MAX_ADVANCE_HEIGHT_NV 0x02000000
-#define GL_FONT_UNDERLINE_POSITION_NV 0x04000000
-#define GL_FONT_UNDERLINE_THICKNESS_NV 0x08000000
-#define GL_FONT_HAS_KERNING_NV 0x10000000
+#define GL_GLYPH_HAS_KERNING_BIT_NV 0x100
+#define GL_FONT_X_MIN_BOUNDS_BIT_NV 0x00010000
+#define GL_FONT_Y_MIN_BOUNDS_BIT_NV 0x00020000
+#define GL_FONT_X_MAX_BOUNDS_BIT_NV 0x00040000
+#define GL_FONT_Y_MAX_BOUNDS_BIT_NV 0x00080000
+#define GL_FONT_UNITS_PER_EM_BIT_NV 0x00100000
+#define GL_FONT_ASCENDER_BIT_NV 0x00200000
+#define GL_FONT_DESCENDER_BIT_NV 0x00400000
+#define GL_FONT_HEIGHT_BIT_NV 0x00800000
+#define GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV 0x01000000
+#define GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV 0x02000000
+#define GL_FONT_UNDERLINE_POSITION_BIT_NV 0x04000000
+#define GL_FONT_UNDERLINE_THICKNESS_BIT_NV 0x08000000
+#define GL_FONT_HAS_KERNING_BIT_NV 0x10000000
+/* reuse GL_PRIMARY_COLOR */
+/* reuse GL_PRIMARY_COLOR_NV */
+/* reuse GL_SECONDARY_COLOR_NV */
#endif
#ifndef GL_AMD_pinned_memory
@@ -5489,6 +6153,50 @@ extern "C" {
#define GL_QUERY_RESULT_NO_WAIT_AMD 0x9194
#endif
+#ifndef GL_NV_compute_program5
+#define GL_COMPUTE_PROGRAM_NV 0x90FB
+#define GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV 0x90FC
+#endif
+
+#ifndef GL_NV_shader_storage_buffer_object
+#endif
+
+#ifndef GL_NV_shader_atomic_counters
+#endif
+
+#ifndef GL_NV_deep_texture3D
+#define GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV 0x90D0
+#define GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV 0x90D1
+#endif
+
+#ifndef GL_NVX_conditional_render
+#endif
+
+#ifndef GL_AMD_sparse_texture
+#define GL_VIRTUAL_PAGE_SIZE_X_AMD 0x9195
+#define GL_VIRTUAL_PAGE_SIZE_Y_AMD 0x9196
+#define GL_VIRTUAL_PAGE_SIZE_Z_AMD 0x9197
+#define GL_MAX_SPARSE_TEXTURE_SIZE_AMD 0x9198
+#define GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD 0x9199
+#define GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS 0x919A
+#define GL_MIN_SPARSE_LEVEL_AMD 0x919B
+#define GL_MIN_LOD_WARNING_AMD 0x919C
+#define GL_TEXTURE_STORAGE_SPARSE_BIT_AMD 0x00000001
+#endif
+
+#ifndef GL_AMD_shader_trinary_minmax
+#endif
+
+#ifndef GL_INTEL_map_texture
+#define GL_TEXTURE_MEMORY_LAYOUT_INTEL 0x83FF
+#define GL_LAYOUT_DEFAULT_INTEL 0
+#define GL_LAYOUT_LINEAR_INTEL 1
+#define GL_LAYOUT_LINEAR_CPU_CACHED_INTEL 2
+#endif
+
+#ifndef GL_NV_draw_texture
+#endif
+
/*************************************************************/
@@ -5588,10 +6296,19 @@ typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLen
typedef void (APIENTRY *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
#endif
+#ifndef GL_KHR_debug
+typedef void (APIENTRY *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
+#endif
+
#ifndef GL_NV_vdpau_interop
typedef GLintptr GLvdpauSurfaceNV;
#endif
+#ifndef GL_OES_fixed_point
+/* GLint must be 32 bits, a relatively safe assumption on modern CPUs */
+typedef GLint GLfixed;
+#endif
+
#ifndef GL_VERSION_1_2
#define GL_VERSION_1_2 1
#ifdef GL_GLEXT_PROTOTYPES
@@ -5601,18 +6318,6 @@ GLAPI void APIENTRY glDrawRangeElements (GLenum mode, GLuint start, GLuint end,
GLAPI void APIENTRY glTexImage3D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
GLAPI void APIENTRY glTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
GLAPI void APIENTRY glCopyTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-#endif /* GL_GLEXT_PROTOTYPES */
-typedef void (APIENTRYP PFNGLBLENDCOLORPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);
-typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
-typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
-typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
-typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-#endif
-
-#ifndef GL_VERSION_1_2_DEPRECATED
-#define GL_VERSION_1_2_DEPRECATED 1
-#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glColorTable (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
GLAPI void APIENTRY glColorTableParameterfv (GLenum target, GLenum pname, const GLfloat *params);
GLAPI void APIENTRY glColorTableParameteriv (GLenum target, GLenum pname, const GLint *params);
@@ -5646,6 +6351,12 @@ GLAPI void APIENTRY glMinmax (GLenum target, GLenum internalformat, GLboolean si
GLAPI void APIENTRY glResetHistogram (GLenum target);
GLAPI void APIENTRY glResetMinmax (GLenum target);
#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLBLENDCOLORPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);
+typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
typedef void (APIENTRYP PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
typedef void (APIENTRYP PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
typedef void (APIENTRYP PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
@@ -5692,21 +6403,6 @@ GLAPI void APIENTRY glCompressedTexSubImage3D (GLenum target, GLint level, GLint
GLAPI void APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
GLAPI void APIENTRY glCompressedTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
GLAPI void APIENTRY glGetCompressedTexImage (GLenum target, GLint level, GLvoid *img);
-#endif /* GL_GLEXT_PROTOTYPES */
-typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture);
-typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLfloat value, GLboolean invert);
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
-typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
-typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img);
-#endif
-
-#ifndef GL_VERSION_1_3_DEPRECATED
-#define GL_VERSION_1_3_DEPRECATED 1
-#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glClientActiveTexture (GLenum texture);
GLAPI void APIENTRY glMultiTexCoord1d (GLenum target, GLdouble s);
GLAPI void APIENTRY glMultiTexCoord1dv (GLenum target, const GLdouble *v);
@@ -5745,6 +6441,15 @@ GLAPI void APIENTRY glLoadTransposeMatrixd (const GLdouble *m);
GLAPI void APIENTRY glMultTransposeMatrixf (const GLfloat *m);
GLAPI void APIENTRY glMultTransposeMatrixd (const GLdouble *m);
#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture);
+typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLfloat value, GLboolean invert);
+typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img);
typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture);
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s);
typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v);
@@ -5788,25 +6493,12 @@ typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble *m);
#define GL_VERSION_1_4 1
#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
-GLAPI void APIENTRY glMultiDrawArrays (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
-GLAPI void APIENTRY glMultiDrawElements (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei primcount);
+GLAPI void APIENTRY glMultiDrawArrays (GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+GLAPI void APIENTRY glMultiDrawElements (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
GLAPI void APIENTRY glPointParameterf (GLenum pname, GLfloat param);
GLAPI void APIENTRY glPointParameterfv (GLenum pname, const GLfloat *params);
GLAPI void APIENTRY glPointParameteri (GLenum pname, GLint param);
GLAPI void APIENTRY glPointParameteriv (GLenum pname, const GLint *params);
-#endif /* GL_GLEXT_PROTOTYPES */
-typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
-typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
-typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei primcount);
-typedef void (APIENTRYP PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param);
-typedef void (APIENTRYP PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params);
-typedef void (APIENTRYP PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param);
-typedef void (APIENTRYP PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint *params);
-#endif
-
-#ifndef GL_VERSION_1_4_DEPRECATED
-#define GL_VERSION_1_4_DEPRECATED 1
-#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glFogCoordf (GLfloat coord);
GLAPI void APIENTRY glFogCoordfv (const GLfloat *coord);
GLAPI void APIENTRY glFogCoordd (GLdouble coord);
@@ -5846,6 +6538,13 @@ GLAPI void APIENTRY glWindowPos3iv (const GLint *v);
GLAPI void APIENTRY glWindowPos3s (GLshort x, GLshort y, GLshort z);
GLAPI void APIENTRY glWindowPos3sv (const GLshort *v);
#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+typedef void (APIENTRYP PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param);
+typedef void (APIENTRYP PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params);
+typedef void (APIENTRYP PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param);
+typedef void (APIENTRYP PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint *params);
typedef void (APIENTRYP PFNGLFOGCOORDFPROC) (GLfloat coord);
typedef void (APIENTRYP PFNGLFOGCOORDFVPROC) (const GLfloat *coord);
typedef void (APIENTRYP PFNGLFOGCOORDDPROC) (GLdouble coord);
@@ -6272,13 +6971,13 @@ typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGIPROC) (GLenum name, GLuint ind
/* ARB_copy_buffer */
/* ARB_uniform_buffer_object */
#ifdef GL_GLEXT_PROTOTYPES
-GLAPI void APIENTRY glDrawArraysInstanced (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
-GLAPI void APIENTRY glDrawElementsInstanced (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
+GLAPI void APIENTRY glDrawArraysInstanced (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+GLAPI void APIENTRY glDrawElementsInstanced (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
GLAPI void APIENTRY glTexBuffer (GLenum target, GLenum internalformat, GLuint buffer);
GLAPI void APIENTRY glPrimitiveRestartIndex (GLuint index);
#endif /* GL_GLEXT_PROTOTYPES */
-typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
-typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
+typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
typedef void (APIENTRYP PFNGLTEXBUFFERPROC) (GLenum target, GLenum internalformat, GLuint buffer);
typedef void (APIENTRYP PFNGLPRIMITIVERESTARTINDEXPROC) (GLuint index);
#endif
@@ -6373,6 +7072,33 @@ typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEIPROC) (GLuint buf, GLenum srcRGB,
/* ARB_texture_storage */
#endif
+#ifndef GL_VERSION_4_3
+#define GL_VERSION_4_3 1
+/* OpenGL 4.3 reuses entry points from these extensions: */
+/* ARB_arrays_of_arrays (no entry points, GLSL only) */
+/* ARB_fragment_layer_viewport (no entry points, GLSL only) */
+/* ARB_shader_image_size (no entry points, GLSL only) */
+/* ARB_ES3_compatibility (no entry points) */
+/* ARB_clear_buffer_object */
+/* ARB_compute_shader */
+/* ARB_copy_image */
+/* KHR_debug (includes ARB_debug_output commands promoted to KHR without suffixes) */
+/* ARB_explicit_uniform_location (no entry points) */
+/* ARB_framebuffer_no_attachments */
+/* ARB_internalformat_query2 */
+/* ARB_invalidate_subdata */
+/* ARB_multi_draw_indirect */
+/* ARB_program_interface_query */
+/* ARB_robust_buffer_access_behavior (no entry points) */
+/* ARB_shader_storage_buffer_object */
+/* ARB_stencil_texturing (no entry points) */
+/* ARB_texture_buffer_range */
+/* ARB_texture_query_levels (no entry points) */
+/* ARB_texture_storage_multisample */
+/* ARB_texture_view */
+/* ARB_vertex_attrib_binding */
+#endif
+
#ifndef GL_ARB_multitexture
#define GL_ARB_multitexture 1
#ifdef GL_GLEXT_PROTOTYPES
@@ -7127,13 +7853,13 @@ typedef void (APIENTRYP PFNGLCOPYBUFFERSUBDATAPROC) (GLenum readTarget, GLenum w
#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glDrawElementsBaseVertex (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
GLAPI void APIENTRY glDrawRangeElementsBaseVertex (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
-GLAPI void APIENTRY glDrawElementsInstancedBaseVertex (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount, GLint basevertex);
-GLAPI void APIENTRY glMultiDrawElementsBaseVertex (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei primcount, const GLint *basevertex);
+GLAPI void APIENTRY glDrawElementsInstancedBaseVertex (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+GLAPI void APIENTRY glMultiDrawElementsBaseVertex (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
#endif /* GL_GLEXT_PROTOTYPES */
typedef void (APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
-typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount, GLint basevertex);
-typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei primcount, const GLint *basevertex);
+typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
#endif
#ifndef GL_ARB_fragment_coord_conventions
@@ -7811,13 +8537,13 @@ typedef void (APIENTRYP PFNGLGETNUNIFORMDVARBPROC) (GLuint program, GLint locati
#ifndef GL_ARB_base_instance
#define GL_ARB_base_instance 1
#ifdef GL_GLEXT_PROTOTYPES
-GLAPI void APIENTRY glDrawArraysInstancedBaseInstance (GLenum mode, GLint first, GLsizei count, GLsizei primcount, GLuint baseinstance);
-GLAPI void APIENTRY glDrawElementsInstancedBaseInstance (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount, GLuint baseinstance);
-GLAPI void APIENTRY glDrawElementsInstancedBaseVertexBaseInstance (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount, GLint basevertex, GLuint baseinstance);
+GLAPI void APIENTRY glDrawArraysInstancedBaseInstance (GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
+GLAPI void APIENTRY glDrawElementsInstancedBaseInstance (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
+GLAPI void APIENTRY glDrawElementsInstancedBaseVertexBaseInstance (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
#endif /* GL_GLEXT_PROTOTYPES */
-typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount, GLuint baseinstance);
-typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount, GLuint baseinstance);
-typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount, GLint basevertex, GLuint baseinstance);
+typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
+typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
+typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
#endif
#ifndef GL_ARB_shading_language_420pack
@@ -7827,11 +8553,11 @@ typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC) (G
#ifndef GL_ARB_transform_feedback_instanced
#define GL_ARB_transform_feedback_instanced 1
#ifdef GL_GLEXT_PROTOTYPES
-GLAPI void APIENTRY glDrawTransformFeedbackInstanced (GLenum mode, GLuint id, GLsizei primcount);
-GLAPI void APIENTRY glDrawTransformFeedbackStreamInstanced (GLenum mode, GLuint id, GLuint stream, GLsizei primcount);
+GLAPI void APIENTRY glDrawTransformFeedbackInstanced (GLenum mode, GLuint id, GLsizei instancecount);
+GLAPI void APIENTRY glDrawTransformFeedbackStreamInstanced (GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
#endif /* GL_GLEXT_PROTOTYPES */
-typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC) (GLenum mode, GLuint id, GLsizei primcount);
-typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC) (GLenum mode, GLuint id, GLuint stream, GLsizei primcount);
+typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC) (GLenum mode, GLuint id, GLsizei instancecount);
+typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC) (GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
#endif
#ifndef GL_ARB_compressed_texture_pixel_storage
@@ -7894,6 +8620,242 @@ typedef void (APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum ta
typedef void (APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
#endif
+#ifndef GL_KHR_texture_compression_astc_ldr
+#define GL_KHR_texture_compression_astc_ldr 1
+#endif
+
+#ifndef GL_KHR_debug
+#define GL_KHR_debug 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glDebugMessageControl (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
+GLAPI void APIENTRY glDebugMessageInsert (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
+GLAPI void APIENTRY glDebugMessageCallback (GLDEBUGPROC callback, const void *userParam);
+GLAPI GLuint APIENTRY glGetDebugMessageLog (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
+GLAPI void APIENTRY glPushDebugGroup (GLenum source, GLuint id, GLsizei length, const GLchar *message);
+GLAPI void APIENTRY glPopDebugGroup (void);
+GLAPI void APIENTRY glObjectLabel (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
+GLAPI void APIENTRY glGetObjectLabel (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
+GLAPI void APIENTRY glObjectPtrLabel (const void *ptr, GLsizei length, const GLchar *label);
+GLAPI void APIENTRY glGetObjectPtrLabel (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLDEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
+typedef void (APIENTRYP PFNGLDEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
+typedef void (APIENTRYP PFNGLDEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void *userParam);
+typedef GLuint (APIENTRYP PFNGLGETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
+typedef void (APIENTRYP PFNGLPUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
+typedef void (APIENTRYP PFNGLPOPDEBUGGROUPPROC) (void);
+typedef void (APIENTRYP PFNGLOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
+typedef void (APIENTRYP PFNGLGETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
+typedef void (APIENTRYP PFNGLOBJECTPTRLABELPROC) (const void *ptr, GLsizei length, const GLchar *label);
+typedef void (APIENTRYP PFNGLGETOBJECTPTRLABELPROC) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
+#endif
+
+#ifndef GL_ARB_arrays_of_arrays
+#define GL_ARB_arrays_of_arrays 1
+#endif
+
+#ifndef GL_ARB_clear_buffer_object
+#define GL_ARB_clear_buffer_object 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glClearBufferData (GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
+GLAPI void APIENTRY glClearBufferSubData (GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
+GLAPI void APIENTRY glClearNamedBufferDataEXT (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data);
+GLAPI void APIENTRY glClearNamedBufferSubDataEXT (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, GLsizeiptr offset, GLsizeiptr size, const void *data);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLCLEARBUFFERDATAPROC) (GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
+typedef void (APIENTRYP PFNGLCLEARBUFFERSUBDATAPROC) (GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
+typedef void (APIENTRYP PFNGLCLEARNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data);
+typedef void (APIENTRYP PFNGLCLEARNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, GLsizeiptr offset, GLsizeiptr size, const void *data);
+#endif
+
+#ifndef GL_ARB_compute_shader
+#define GL_ARB_compute_shader 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glDispatchCompute (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
+GLAPI void APIENTRY glDispatchComputeIndirect (GLintptr indirect);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLDISPATCHCOMPUTEPROC) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
+typedef void (APIENTRYP PFNGLDISPATCHCOMPUTEINDIRECTPROC) (GLintptr indirect);
+#endif
+
+#ifndef GL_ARB_copy_image
+#define GL_ARB_copy_image 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glCopyImageSubData (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLCOPYIMAGESUBDATAPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
+#endif
+
+#ifndef GL_ARB_texture_view
+#define GL_ARB_texture_view 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glTextureView (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLTEXTUREVIEWPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
+#endif
+
+#ifndef GL_ARB_vertex_attrib_binding
+#define GL_ARB_vertex_attrib_binding 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glBindVertexBuffer (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+GLAPI void APIENTRY glVertexAttribFormat (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+GLAPI void APIENTRY glVertexAttribIFormat (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+GLAPI void APIENTRY glVertexAttribLFormat (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+GLAPI void APIENTRY glVertexAttribBinding (GLuint attribindex, GLuint bindingindex);
+GLAPI void APIENTRY glVertexBindingDivisor (GLuint bindingindex, GLuint divisor);
+GLAPI void APIENTRY glVertexArrayBindVertexBufferEXT (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+GLAPI void APIENTRY glVertexArrayVertexAttribFormatEXT (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+GLAPI void APIENTRY glVertexArrayVertexAttribIFormatEXT (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+GLAPI void APIENTRY glVertexArrayVertexAttribLFormatEXT (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+GLAPI void APIENTRY glVertexArrayVertexAttribBindingEXT (GLuint vaobj, GLuint attribindex, GLuint bindingindex);
+GLAPI void APIENTRY glVertexArrayVertexBindingDivisorEXT (GLuint vaobj, GLuint bindingindex, GLuint divisor);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLBINDVERTEXBUFFERPROC) (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+typedef void (APIENTRYP PFNGLVERTEXATTRIBFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+typedef void (APIENTRYP PFNGLVERTEXATTRIBIFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+typedef void (APIENTRYP PFNGLVERTEXATTRIBLFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+typedef void (APIENTRYP PFNGLVERTEXATTRIBBINDINGPROC) (GLuint attribindex, GLuint bindingindex);
+typedef void (APIENTRYP PFNGLVERTEXBINDINGDIVISORPROC) (GLuint bindingindex, GLuint divisor);
+typedef void (APIENTRYP PFNGLVERTEXARRAYBINDVERTEXBUFFEREXTPROC) (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXATTRIBFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXATTRIBIFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXATTRIBLFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXATTRIBBINDINGEXTPROC) (GLuint vaobj, GLuint attribindex, GLuint bindingindex);
+typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXBINDINGDIVISOREXTPROC) (GLuint vaobj, GLuint bindingindex, GLuint divisor);
+#endif
+
+#ifndef GL_ARB_robustness_isolation
+#define GL_ARB_robustness_isolation 1
+#endif
+
+#ifndef GL_ARB_ES3_compatibility
+#define GL_ARB_ES3_compatibility 1
+#endif
+
+#ifndef GL_ARB_explicit_uniform_location
+#define GL_ARB_explicit_uniform_location 1
+#endif
+
+#ifndef GL_ARB_fragment_layer_viewport
+#define GL_ARB_fragment_layer_viewport 1
+#endif
+
+#ifndef GL_ARB_framebuffer_no_attachments
+#define GL_ARB_framebuffer_no_attachments 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glFramebufferParameteri (GLenum target, GLenum pname, GLint param);
+GLAPI void APIENTRY glGetFramebufferParameteriv (GLenum target, GLenum pname, GLint *params);
+GLAPI void APIENTRY glNamedFramebufferParameteriEXT (GLuint framebuffer, GLenum pname, GLint param);
+GLAPI void APIENTRY glGetNamedFramebufferParameterivEXT (GLuint framebuffer, GLenum pname, GLint *params);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLFRAMEBUFFERPARAMETERIPROC) (GLenum target, GLenum pname, GLint param);
+typedef void (APIENTRYP PFNGLGETFRAMEBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
+typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERPARAMETERIEXTPROC) (GLuint framebuffer, GLenum pname, GLint param);
+typedef void (APIENTRYP PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint *params);
+#endif
+
+#ifndef GL_ARB_internalformat_query2
+#define GL_ARB_internalformat_query2 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glGetInternalformati64v (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLGETINTERNALFORMATI64VPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
+#endif
+
+#ifndef GL_ARB_invalidate_subdata
+#define GL_ARB_invalidate_subdata 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glInvalidateTexSubImage (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
+GLAPI void APIENTRY glInvalidateTexImage (GLuint texture, GLint level);
+GLAPI void APIENTRY glInvalidateBufferSubData (GLuint buffer, GLintptr offset, GLsizeiptr length);
+GLAPI void APIENTRY glInvalidateBufferData (GLuint buffer);
+GLAPI void APIENTRY glInvalidateFramebuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments);
+GLAPI void APIENTRY glInvalidateSubFramebuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLINVALIDATETEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
+typedef void (APIENTRYP PFNGLINVALIDATETEXIMAGEPROC) (GLuint texture, GLint level);
+typedef void (APIENTRYP PFNGLINVALIDATEBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length);
+typedef void (APIENTRYP PFNGLINVALIDATEBUFFERDATAPROC) (GLuint buffer);
+typedef void (APIENTRYP PFNGLINVALIDATEFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
+typedef void (APIENTRYP PFNGLINVALIDATESUBFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
+#endif
+
+#ifndef GL_ARB_multi_draw_indirect
+#define GL_ARB_multi_draw_indirect 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glMultiDrawArraysIndirect (GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
+GLAPI void APIENTRY glMultiDrawElementsIndirect (GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTPROC) (GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
+typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
+#endif
+
+#ifndef GL_ARB_program_interface_query
+#define GL_ARB_program_interface_query 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glGetProgramInterfaceiv (GLuint program, GLenum programInterface, GLenum pname, GLint *params);
+GLAPI GLuint APIENTRY glGetProgramResourceIndex (GLuint program, GLenum programInterface, const GLchar *name);
+GLAPI void APIENTRY glGetProgramResourceName (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
+GLAPI void APIENTRY glGetProgramResourceiv (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
+GLAPI GLint APIENTRY glGetProgramResourceLocation (GLuint program, GLenum programInterface, const GLchar *name);
+GLAPI GLint APIENTRY glGetProgramResourceLocationIndex (GLuint program, GLenum programInterface, const GLchar *name);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLGETPROGRAMINTERFACEIVPROC) (GLuint program, GLenum programInterface, GLenum pname, GLint *params);
+typedef GLuint (APIENTRYP PFNGLGETPROGRAMRESOURCEINDEXPROC) (GLuint program, GLenum programInterface, const GLchar *name);
+typedef void (APIENTRYP PFNGLGETPROGRAMRESOURCENAMEPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
+typedef void (APIENTRYP PFNGLGETPROGRAMRESOURCEIVPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
+typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONPROC) (GLuint program, GLenum programInterface, const GLchar *name);
+typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC) (GLuint program, GLenum programInterface, const GLchar *name);
+#endif
+
+#ifndef GL_ARB_robust_buffer_access_behavior
+#define GL_ARB_robust_buffer_access_behavior 1
+#endif
+
+#ifndef GL_ARB_shader_image_size
+#define GL_ARB_shader_image_size 1
+#endif
+
+#ifndef GL_ARB_shader_storage_buffer_object
+#define GL_ARB_shader_storage_buffer_object 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glShaderStorageBlockBinding (GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLSHADERSTORAGEBLOCKBINDINGPROC) (GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
+#endif
+
+#ifndef GL_ARB_stencil_texturing
+#define GL_ARB_stencil_texturing 1
+#endif
+
+#ifndef GL_ARB_texture_buffer_range
+#define GL_ARB_texture_buffer_range 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glTexBufferRange (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
+GLAPI void APIENTRY glTextureBufferRangeEXT (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLTEXBUFFERRANGEPROC) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
+typedef void (APIENTRYP PFNGLTEXTUREBUFFERRANGEEXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
+#endif
+
+#ifndef GL_ARB_texture_query_levels
+#define GL_ARB_texture_query_levels 1
+#endif
+
+#ifndef GL_ARB_texture_storage_multisample
+#define GL_ARB_texture_storage_multisample 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glTexStorage2DMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+GLAPI void APIENTRY glTexStorage3DMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+GLAPI void APIENTRY glTextureStorage2DMultisampleEXT (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+GLAPI void APIENTRY glTextureStorage3DMultisampleEXT (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLTEXSTORAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+typedef void (APIENTRYP PFNGLTEXSTORAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+typedef void (APIENTRYP PFNGLTEXTURESTORAGE2DMULTISAMPLEEXTPROC) (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+typedef void (APIENTRYP PFNGLTEXTURESTORAGE3DMULTISAMPLEEXTPROC) (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+#endif
+
#ifndef GL_EXT_abgr
#define GL_EXT_abgr 1
#endif
@@ -8635,11 +9597,15 @@ GLAPI void APIENTRY glPixelTransformParameteriEXT (GLenum target, GLenum pname,
GLAPI void APIENTRY glPixelTransformParameterfEXT (GLenum target, GLenum pname, GLfloat param);
GLAPI void APIENTRY glPixelTransformParameterivEXT (GLenum target, GLenum pname, const GLint *params);
GLAPI void APIENTRY glPixelTransformParameterfvEXT (GLenum target, GLenum pname, const GLfloat *params);
+GLAPI void APIENTRY glGetPixelTransformParameterivEXT (GLenum target, GLenum pname, GLint *params);
+GLAPI void APIENTRY glGetPixelTransformParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
#endif /* GL_GLEXT_PROTOTYPES */
typedef void (APIENTRYP PFNGLPIXELTRANSFORMPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint param);
typedef void (APIENTRYP PFNGLPIXELTRANSFORMPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat param);
typedef void (APIENTRYP PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint *params);
typedef void (APIENTRYP PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat *params);
+typedef void (APIENTRYP PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
+typedef void (APIENTRYP PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
#endif
#ifndef GL_EXT_pixel_transform_color_table
@@ -8991,11 +9957,11 @@ typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEINGRPROC) (GLenum sfactorRGB, GLen
#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glVertexWeightfEXT (GLfloat weight);
GLAPI void APIENTRY glVertexWeightfvEXT (const GLfloat *weight);
-GLAPI void APIENTRY glVertexWeightPointerEXT (GLsizei size, GLenum type, GLsizei stride, const GLvoid *pointer);
+GLAPI void APIENTRY glVertexWeightPointerEXT (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
#endif /* GL_GLEXT_PROTOTYPES */
typedef void (APIENTRYP PFNGLVERTEXWEIGHTFEXTPROC) (GLfloat weight);
typedef void (APIENTRYP PFNGLVERTEXWEIGHTFVEXTPROC) (const GLfloat *weight);
-typedef void (APIENTRYP PFNGLVERTEXWEIGHTPOINTEREXTPROC) (GLsizei size, GLenum type, GLsizei stride, const GLvoid *pointer);
+typedef void (APIENTRYP PFNGLVERTEXWEIGHTPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
#endif
#ifndef GL_NV_light_max_exponent
@@ -9944,15 +10910,15 @@ typedef void (APIENTRYP PFNGLDRAWBUFFERSATIPROC) (GLsizei n, const GLenum *bufs)
/* Some NV_fragment_program entry points are shared with ARB_vertex_program. */
#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glProgramNamedParameter4fNV (GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-GLAPI void APIENTRY glProgramNamedParameter4dNV (GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
GLAPI void APIENTRY glProgramNamedParameter4fvNV (GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
+GLAPI void APIENTRY glProgramNamedParameter4dNV (GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
GLAPI void APIENTRY glProgramNamedParameter4dvNV (GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
GLAPI void APIENTRY glGetProgramNamedParameterfvNV (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
GLAPI void APIENTRY glGetProgramNamedParameterdvNV (GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
#endif /* GL_GLEXT_PROTOTYPES */
typedef void (APIENTRYP PFNGLPROGRAMNAMEDPARAMETER4FNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (APIENTRYP PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (APIENTRYP PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
+typedef void (APIENTRYP PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
typedef void (APIENTRYP PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
typedef void (APIENTRYP PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
typedef void (APIENTRYP PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
@@ -10059,10 +11025,10 @@ typedef void (APIENTRYP PFNGLVERTEXATTRIBS4HVNVPROC) (GLuint index, GLsizei n, c
#ifndef GL_NV_pixel_data_range
#define GL_NV_pixel_data_range 1
#ifdef GL_GLEXT_PROTOTYPES
-GLAPI void APIENTRY glPixelDataRangeNV (GLenum target, GLsizei length, GLvoid *pointer);
+GLAPI void APIENTRY glPixelDataRangeNV (GLenum target, GLsizei length, const GLvoid *pointer);
GLAPI void APIENTRY glFlushPixelDataRangeNV (GLenum target);
#endif /* GL_GLEXT_PROTOTYPES */
-typedef void (APIENTRYP PFNGLPIXELDATARANGENVPROC) (GLenum target, GLsizei length, GLvoid *pointer);
+typedef void (APIENTRYP PFNGLPIXELDATARANGENVPROC) (GLenum target, GLsizei length, const GLvoid *pointer);
typedef void (APIENTRYP PFNGLFLUSHPIXELDATARANGENVPROC) (GLenum target);
#endif
@@ -10116,10 +11082,304 @@ typedef void (APIENTRYP PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC) (GLuint index,
typedef void (APIENTRYP PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC) (GLuint index, GLenum pname, GLint *params);
#endif
+#ifndef GL_OES_byte_coordinates
+#define GL_OES_byte_coordinates 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glMultiTexCoord1bOES (GLenum texture, GLbyte s);
+GLAPI void APIENTRY glMultiTexCoord1bvOES (GLenum texture, const GLbyte *coords);
+GLAPI void APIENTRY glMultiTexCoord2bOES (GLenum texture, GLbyte s, GLbyte t);
+GLAPI void APIENTRY glMultiTexCoord2bvOES (GLenum texture, const GLbyte *coords);
+GLAPI void APIENTRY glMultiTexCoord3bOES (GLenum texture, GLbyte s, GLbyte t, GLbyte r);
+GLAPI void APIENTRY glMultiTexCoord3bvOES (GLenum texture, const GLbyte *coords);
+GLAPI void APIENTRY glMultiTexCoord4bOES (GLenum texture, GLbyte s, GLbyte t, GLbyte r, GLbyte q);
+GLAPI void APIENTRY glMultiTexCoord4bvOES (GLenum texture, const GLbyte *coords);
+GLAPI void APIENTRY glTexCoord1bOES (GLbyte s);
+GLAPI void APIENTRY glTexCoord1bvOES (const GLbyte *coords);
+GLAPI void APIENTRY glTexCoord2bOES (GLbyte s, GLbyte t);
+GLAPI void APIENTRY glTexCoord2bvOES (const GLbyte *coords);
+GLAPI void APIENTRY glTexCoord3bOES (GLbyte s, GLbyte t, GLbyte r);
+GLAPI void APIENTRY glTexCoord3bvOES (const GLbyte *coords);
+GLAPI void APIENTRY glTexCoord4bOES (GLbyte s, GLbyte t, GLbyte r, GLbyte q);
+GLAPI void APIENTRY glTexCoord4bvOES (const GLbyte *coords);
+GLAPI void APIENTRY glVertex2bOES (GLbyte x);
+GLAPI void APIENTRY glVertex2bvOES (const GLbyte *coords);
+GLAPI void APIENTRY glVertex3bOES (GLbyte x, GLbyte y);
+GLAPI void APIENTRY glVertex3bvOES (const GLbyte *coords);
+GLAPI void APIENTRY glVertex4bOES (GLbyte x, GLbyte y, GLbyte z);
+GLAPI void APIENTRY glVertex4bvOES (const GLbyte *coords);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLMULTITEXCOORD1BOESPROC) (GLenum texture, GLbyte s);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD1BVOESPROC) (GLenum texture, const GLbyte *coords);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD2BOESPROC) (GLenum texture, GLbyte s, GLbyte t);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD2BVOESPROC) (GLenum texture, const GLbyte *coords);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD3BOESPROC) (GLenum texture, GLbyte s, GLbyte t, GLbyte r);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD3BVOESPROC) (GLenum texture, const GLbyte *coords);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD4BOESPROC) (GLenum texture, GLbyte s, GLbyte t, GLbyte r, GLbyte q);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD4BVOESPROC) (GLenum texture, const GLbyte *coords);
+typedef void (APIENTRYP PFNGLTEXCOORD1BOESPROC) (GLbyte s);
+typedef void (APIENTRYP PFNGLTEXCOORD1BVOESPROC) (const GLbyte *coords);
+typedef void (APIENTRYP PFNGLTEXCOORD2BOESPROC) (GLbyte s, GLbyte t);
+typedef void (APIENTRYP PFNGLTEXCOORD2BVOESPROC) (const GLbyte *coords);
+typedef void (APIENTRYP PFNGLTEXCOORD3BOESPROC) (GLbyte s, GLbyte t, GLbyte r);
+typedef void (APIENTRYP PFNGLTEXCOORD3BVOESPROC) (const GLbyte *coords);
+typedef void (APIENTRYP PFNGLTEXCOORD4BOESPROC) (GLbyte s, GLbyte t, GLbyte r, GLbyte q);
+typedef void (APIENTRYP PFNGLTEXCOORD4BVOESPROC) (const GLbyte *coords);
+typedef void (APIENTRYP PFNGLVERTEX2BOESPROC) (GLbyte x);
+typedef void (APIENTRYP PFNGLVERTEX2BVOESPROC) (const GLbyte *coords);
+typedef void (APIENTRYP PFNGLVERTEX3BOESPROC) (GLbyte x, GLbyte y);
+typedef void (APIENTRYP PFNGLVERTEX3BVOESPROC) (const GLbyte *coords);
+typedef void (APIENTRYP PFNGLVERTEX4BOESPROC) (GLbyte x, GLbyte y, GLbyte z);
+typedef void (APIENTRYP PFNGLVERTEX4BVOESPROC) (const GLbyte *coords);
+#endif
+
+#ifndef GL_OES_fixed_point
+#define GL_OES_fixed_point 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glAccumxOES (GLenum op, GLfixed value);
+GLAPI void APIENTRY glAlphaFuncxOES (GLenum func, GLfixed ref);
+GLAPI void APIENTRY glBitmapxOES (GLsizei width, GLsizei height, GLfixed xorig, GLfixed yorig, GLfixed xmove, GLfixed ymove, const GLubyte *bitmap);
+GLAPI void APIENTRY glBlendColorxOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+GLAPI void APIENTRY glClearAccumxOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+GLAPI void APIENTRY glClearColorxOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+GLAPI void APIENTRY glClearDepthxOES (GLfixed depth);
+GLAPI void APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation);
+GLAPI void APIENTRY glColor3xOES (GLfixed red, GLfixed green, GLfixed blue);
+GLAPI void APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+GLAPI void APIENTRY glColor3xvOES (const GLfixed *components);
+GLAPI void APIENTRY glColor4xvOES (const GLfixed *components);
+GLAPI void APIENTRY glConvolutionParameterxOES (GLenum target, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glConvolutionParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glDepthRangexOES (GLfixed n, GLfixed f);
+GLAPI void APIENTRY glEvalCoord1xOES (GLfixed u);
+GLAPI void APIENTRY glEvalCoord2xOES (GLfixed u, GLfixed v);
+GLAPI void APIENTRY glEvalCoord1xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glEvalCoord2xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glFeedbackBufferxOES (GLsizei n, GLenum type, const GLfixed *buffer);
+GLAPI void APIENTRY glFogxOES (GLenum pname, GLfixed param);
+GLAPI void APIENTRY glFogxvOES (GLenum pname, const GLfixed *param);
+GLAPI void APIENTRY glFrustumxOES (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
+GLAPI void APIENTRY glGetClipPlanexOES (GLenum plane, GLfixed *equation);
+GLAPI void APIENTRY glGetConvolutionParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetHistogramParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetLightxOES (GLenum light, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetMapxvOES (GLenum target, GLenum query, GLfixed *v);
+GLAPI void APIENTRY glGetMaterialxOES (GLenum face, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glGetPixelMapxv (GLenum map, GLint size, GLfixed *values);
+GLAPI void APIENTRY glGetTexEnvxvOES (GLenum target, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetTexLevelParameterxvOES (GLenum target, GLint level, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
+GLAPI void APIENTRY glIndexxOES (GLfixed component);
+GLAPI void APIENTRY glIndexxvOES (const GLfixed *component);
+GLAPI void APIENTRY glLightModelxOES (GLenum pname, GLfixed param);
+GLAPI void APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *param);
+GLAPI void APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glLineWidthxOES (GLfixed width);
+GLAPI void APIENTRY glLoadMatrixxOES (const GLfixed *m);
+GLAPI void APIENTRY glLoadTransposeMatrixxOES (const GLfixed *m);
+GLAPI void APIENTRY glMap1xOES (GLenum target, GLfixed u1, GLfixed u2, GLint stride, GLint order, GLfixed points);
+GLAPI void APIENTRY glMap2xOES (GLenum target, GLfixed u1, GLfixed u2, GLint ustride, GLint uorder, GLfixed v1, GLfixed v2, GLint vstride, GLint vorder, GLfixed points);
+GLAPI void APIENTRY glMapGrid1xOES (GLint n, GLfixed u1, GLfixed u2);
+GLAPI void APIENTRY glMapGrid2xOES (GLint n, GLfixed u1, GLfixed u2, GLfixed v1, GLfixed v2);
+GLAPI void APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *param);
+GLAPI void APIENTRY glMultMatrixxOES (const GLfixed *m);
+GLAPI void APIENTRY glMultTransposeMatrixxOES (const GLfixed *m);
+GLAPI void APIENTRY glMultiTexCoord1xOES (GLenum texture, GLfixed s);
+GLAPI void APIENTRY glMultiTexCoord2xOES (GLenum texture, GLfixed s, GLfixed t);
+GLAPI void APIENTRY glMultiTexCoord3xOES (GLenum texture, GLfixed s, GLfixed t, GLfixed r);
+GLAPI void APIENTRY glMultiTexCoord4xOES (GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+GLAPI void APIENTRY glMultiTexCoord1xvOES (GLenum texture, const GLfixed *coords);
+GLAPI void APIENTRY glMultiTexCoord2xvOES (GLenum texture, const GLfixed *coords);
+GLAPI void APIENTRY glMultiTexCoord3xvOES (GLenum texture, const GLfixed *coords);
+GLAPI void APIENTRY glMultiTexCoord4xvOES (GLenum texture, const GLfixed *coords);
+GLAPI void APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz);
+GLAPI void APIENTRY glNormal3xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glOrthoxOES (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
+GLAPI void APIENTRY glPassThroughxOES (GLfixed token);
+GLAPI void APIENTRY glPixelMapx (GLenum map, GLint size, const GLfixed *values);
+GLAPI void APIENTRY glPixelStorex (GLenum pname, GLfixed param);
+GLAPI void APIENTRY glPixelTransferxOES (GLenum pname, GLfixed param);
+GLAPI void APIENTRY glPixelZoomxOES (GLfixed xfactor, GLfixed yfactor);
+GLAPI void APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glPointSizexOES (GLfixed size);
+GLAPI void APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units);
+GLAPI void APIENTRY glPrioritizeTexturesxOES (GLsizei n, const GLuint *textures, const GLfixed *priorities);
+GLAPI void APIENTRY glRasterPos2xOES (GLfixed x, GLfixed y);
+GLAPI void APIENTRY glRasterPos3xOES (GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glRasterPos4xOES (GLfixed x, GLfixed y, GLfixed z, GLfixed w);
+GLAPI void APIENTRY glRasterPos2xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glRasterPos3xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glRasterPos4xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glRectxOES (GLfixed x1, GLfixed y1, GLfixed x2, GLfixed y2);
+GLAPI void APIENTRY glRectxvOES (const GLfixed *v1, const GLfixed *v2);
+GLAPI void APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glSampleCoverageOES (GLfixed value, GLboolean invert);
+GLAPI void APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glTexCoord1xOES (GLfixed s);
+GLAPI void APIENTRY glTexCoord2xOES (GLfixed s, GLfixed t);
+GLAPI void APIENTRY glTexCoord3xOES (GLfixed s, GLfixed t, GLfixed r);
+GLAPI void APIENTRY glTexCoord4xOES (GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+GLAPI void APIENTRY glTexCoord1xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glTexCoord2xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glTexCoord3xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glTexCoord4xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param);
+GLAPI void APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
+GLAPI void APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glVertex2xOES (GLfixed x);
+GLAPI void APIENTRY glVertex3xOES (GLfixed x, GLfixed y);
+GLAPI void APIENTRY glVertex4xOES (GLfixed x, GLfixed y, GLfixed z);
+GLAPI void APIENTRY glVertex2xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glVertex3xvOES (const GLfixed *coords);
+GLAPI void APIENTRY glVertex4xvOES (const GLfixed *coords);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLACCUMXOESPROC) (GLenum op, GLfixed value);
+typedef void (APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLfixed ref);
+typedef void (APIENTRYP PFNGLBITMAPXOESPROC) (GLsizei width, GLsizei height, GLfixed xorig, GLfixed yorig, GLfixed xmove, GLfixed ymove, const GLubyte *bitmap);
+typedef void (APIENTRYP PFNGLBLENDCOLORXOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+typedef void (APIENTRYP PFNGLCLEARACCUMXOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+typedef void (APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+typedef void (APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLfixed depth);
+typedef void (APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation);
+typedef void (APIENTRYP PFNGLCOLOR3XOESPROC) (GLfixed red, GLfixed green, GLfixed blue);
+typedef void (APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+typedef void (APIENTRYP PFNGLCOLOR3XVOESPROC) (const GLfixed *components);
+typedef void (APIENTRYP PFNGLCOLOR4XVOESPROC) (const GLfixed *components);
+typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLCONVOLUTIONPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
+typedef void (APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLfixed n, GLfixed f);
+typedef void (APIENTRYP PFNGLEVALCOORD1XOESPROC) (GLfixed u);
+typedef void (APIENTRYP PFNGLEVALCOORD2XOESPROC) (GLfixed u, GLfixed v);
+typedef void (APIENTRYP PFNGLEVALCOORD1XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLEVALCOORD2XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLFEEDBACKBUFFERXOESPROC) (GLsizei n, GLenum type, const GLfixed *buffer);
+typedef void (APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *param);
+typedef void (APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
+typedef void (APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum plane, GLfixed *equation);
+typedef void (APIENTRYP PFNGLGETCONVOLUTIONPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
+typedef void (APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params);
+typedef void (APIENTRYP PFNGLGETHISTOGRAMPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
+typedef void (APIENTRYP PFNGLGETLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed *params);
+typedef void (APIENTRYP PFNGLGETMAPXVOESPROC) (GLenum target, GLenum query, GLfixed *v);
+typedef void (APIENTRYP PFNGLGETMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLGETPIXELMAPXVPROC) (GLenum map, GLint size, GLfixed *values);
+typedef void (APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
+typedef void (APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
+typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERXVOESPROC) (GLenum target, GLint level, GLenum pname, GLfixed *params);
+typedef void (APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
+typedef void (APIENTRYP PFNGLINDEXXOESPROC) (GLfixed component);
+typedef void (APIENTRYP PFNGLINDEXXVOESPROC) (const GLfixed *component);
+typedef void (APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *param);
+typedef void (APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params);
+typedef void (APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width);
+typedef void (APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m);
+typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXXOESPROC) (const GLfixed *m);
+typedef void (APIENTRYP PFNGLMAP1XOESPROC) (GLenum target, GLfixed u1, GLfixed u2, GLint stride, GLint order, GLfixed points);
+typedef void (APIENTRYP PFNGLMAP2XOESPROC) (GLenum target, GLfixed u1, GLfixed u2, GLint ustride, GLint uorder, GLfixed v1, GLfixed v2, GLint vstride, GLint vorder, GLfixed points);
+typedef void (APIENTRYP PFNGLMAPGRID1XOESPROC) (GLint n, GLfixed u1, GLfixed u2);
+typedef void (APIENTRYP PFNGLMAPGRID2XOESPROC) (GLint n, GLfixed u1, GLfixed u2, GLfixed v1, GLfixed v2);
+typedef void (APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *param);
+typedef void (APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m);
+typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXXOESPROC) (const GLfixed *m);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD1XOESPROC) (GLenum texture, GLfixed s);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD2XOESPROC) (GLenum texture, GLfixed s, GLfixed t);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD3XOESPROC) (GLenum texture, GLfixed s, GLfixed t, GLfixed r);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD1XVOESPROC) (GLenum texture, const GLfixed *coords);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD2XVOESPROC) (GLenum texture, const GLfixed *coords);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD3XVOESPROC) (GLenum texture, const GLfixed *coords);
+typedef void (APIENTRYP PFNGLMULTITEXCOORD4XVOESPROC) (GLenum texture, const GLfixed *coords);
+typedef void (APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
+typedef void (APIENTRYP PFNGLNORMAL3XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLORTHOXOESPROC) (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
+typedef void (APIENTRYP PFNGLPASSTHROUGHXOESPROC) (GLfixed token);
+typedef void (APIENTRYP PFNGLPIXELMAPXPROC) (GLenum map, GLint size, const GLfixed *values);
+typedef void (APIENTRYP PFNGLPIXELSTOREXPROC) (GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLPIXELTRANSFERXOESPROC) (GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLPIXELZOOMXOESPROC) (GLfixed xfactor, GLfixed yfactor);
+typedef void (APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params);
+typedef void (APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size);
+typedef void (APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units);
+typedef void (APIENTRYP PFNGLPRIORITIZETEXTURESXOESPROC) (GLsizei n, const GLuint *textures, const GLfixed *priorities);
+typedef void (APIENTRYP PFNGLRASTERPOS2XOESPROC) (GLfixed x, GLfixed y);
+typedef void (APIENTRYP PFNGLRASTERPOS3XOESPROC) (GLfixed x, GLfixed y, GLfixed z);
+typedef void (APIENTRYP PFNGLRASTERPOS4XOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed w);
+typedef void (APIENTRYP PFNGLRASTERPOS2XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLRASTERPOS3XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLRASTERPOS4XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLRECTXOESPROC) (GLfixed x1, GLfixed y1, GLfixed x2, GLfixed y2);
+typedef void (APIENTRYP PFNGLRECTXVOESPROC) (const GLfixed *v1, const GLfixed *v2);
+typedef void (APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
+typedef void (APIENTRYP PFNGLSAMPLECOVERAGEOESPROC) (GLfixed value, GLboolean invert);
+typedef void (APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
+typedef void (APIENTRYP PFNGLTEXCOORD1XOESPROC) (GLfixed s);
+typedef void (APIENTRYP PFNGLTEXCOORD2XOESPROC) (GLfixed s, GLfixed t);
+typedef void (APIENTRYP PFNGLTEXCOORD3XOESPROC) (GLfixed s, GLfixed t, GLfixed r);
+typedef void (APIENTRYP PFNGLTEXCOORD4XOESPROC) (GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+typedef void (APIENTRYP PFNGLTEXCOORD1XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLTEXCOORD2XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLTEXCOORD3XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLTEXCOORD4XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
+typedef void (APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params);
+typedef void (APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
+typedef void (APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
+typedef void (APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
+typedef void (APIENTRYP PFNGLVERTEX2XOESPROC) (GLfixed x);
+typedef void (APIENTRYP PFNGLVERTEX3XOESPROC) (GLfixed x, GLfixed y);
+typedef void (APIENTRYP PFNGLVERTEX4XOESPROC) (GLfixed x, GLfixed y, GLfixed z);
+typedef void (APIENTRYP PFNGLVERTEX2XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLVERTEX3XVOESPROC) (const GLfixed *coords);
+typedef void (APIENTRYP PFNGLVERTEX4XVOESPROC) (const GLfixed *coords);
+#endif
+
+#ifndef GL_OES_single_precision
+#define GL_OES_single_precision 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glDepthRangefOES (GLclampf n, GLclampf f);
+GLAPI void APIENTRY glFrustumfOES (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
+GLAPI void APIENTRY glOrthofOES (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
+GLAPI void APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation);
+GLAPI void APIENTRY glClearDepthfOES (GLclampd depth);
+GLAPI void APIENTRY glGetClipPlanefOES (GLenum plane, GLfloat *equation);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf n, GLclampf f);
+typedef void (APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
+typedef void (APIENTRYP PFNGLORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
+typedef void (APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation);
+typedef void (APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampd depth);
+typedef void (APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum plane, GLfloat *equation);
+#endif
+
+#ifndef GL_OES_compressed_paletted_texture
+#define GL_OES_compressed_paletted_texture 1
+#endif
+
#ifndef GL_OES_read_format
#define GL_OES_read_format 1
#endif
+#ifndef GL_OES_query_matrix
+#define GL_OES_query_matrix 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI GLbitfield APIENTRY glQueryMatrixxOES (const GLfixed *mantissa, const GLint *exponent);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef GLbitfield (APIENTRYP PFNGLQUERYMATRIXXOESPROC) (const GLfixed *mantissa, const GLint *exponent);
+#endif
+
#ifndef GL_EXT_depth_bounds_test
#define GL_EXT_depth_bounds_test 1
#ifdef GL_GLEXT_PROTOTYPES
@@ -10495,13 +11755,13 @@ typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC) (GLen
#ifndef GL_NV_parameter_buffer_object
#define GL_NV_parameter_buffer_object 1
#ifdef GL_GLEXT_PROTOTYPES
-GLAPI void APIENTRY glProgramBufferParametersfvNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params);
-GLAPI void APIENTRY glProgramBufferParametersIivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params);
-GLAPI void APIENTRY glProgramBufferParametersIuivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params);
+GLAPI void APIENTRY glProgramBufferParametersfvNV (GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLfloat *params);
+GLAPI void APIENTRY glProgramBufferParametersIivNV (GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLint *params);
+GLAPI void APIENTRY glProgramBufferParametersIuivNV (GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLuint *params);
#endif /* GL_GLEXT_PROTOTYPES */
-typedef void (APIENTRYP PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params);
-typedef void (APIENTRYP PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params);
-typedef void (APIENTRYP PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params);
+typedef void (APIENTRYP PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC) (GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLfloat *params);
+typedef void (APIENTRYP PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC) (GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLint *params);
+typedef void (APIENTRYP PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC) (GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLuint *params);
#endif
#ifndef GL_EXT_draw_buffers2
@@ -11571,7 +12831,7 @@ typedef GLuint (APIENTRYP PFNGLGETDEBUGMESSAGELOGAMDPROC) (GLuint count, GLsizei
#ifdef GL_GLEXT_PROTOTYPES
GLAPI void APIENTRY glVDPAUInitNV (const GLvoid *vdpDevice, const GLvoid *getProcAddress);
GLAPI void APIENTRY glVDPAUFiniNV (void);
-GLAPI GLvdpauSurfaceNV APIENTRY glVDPAURegisterVideoSurfaceNV (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
+GLAPI GLvdpauSurfaceNV APIENTRY glVDPAURegisterVideoSurfaceNV (const GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
GLAPI GLvdpauSurfaceNV APIENTRY glVDPAURegisterOutputSurfaceNV (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
GLAPI void APIENTRY glVDPAUIsSurfaceNV (GLvdpauSurfaceNV surface);
GLAPI void APIENTRY glVDPAUUnregisterSurfaceNV (GLvdpauSurfaceNV surface);
@@ -11582,7 +12842,7 @@ GLAPI void APIENTRY glVDPAUUnmapSurfacesNV (GLsizei numSurface, const GLvdpauSur
#endif /* GL_GLEXT_PROTOTYPES */
typedef void (APIENTRYP PFNGLVDPAUINITNVPROC) (const GLvoid *vdpDevice, const GLvoid *getProcAddress);
typedef void (APIENTRYP PFNGLVDPAUFININVPROC) (void);
-typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTERVIDEOSURFACENVPROC) (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
+typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTERVIDEOSURFACENVPROC) (const GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC) (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
typedef void (APIENTRYP PFNGLVDPAUISSURFACENVPROC) (GLvdpauSurfaceNV surface);
typedef void (APIENTRYP PFNGLVDPAUUNREGISTERSURFACENVPROC) (GLvdpauSurfaceNV surface);
@@ -11820,6 +13080,66 @@ typedef GLboolean (APIENTRYP PFNGLISIMAGEHANDLERESIDENTNVPROC) (GLuint64 handle)
#define GL_AMD_query_buffer_object 1
#endif
+#ifndef GL_NV_compute_program5
+#define GL_NV_compute_program5 1
+#endif
+
+#ifndef GL_NV_shader_storage_buffer_object
+#define GL_NV_shader_storage_buffer_object 1
+#endif
+
+#ifndef GL_NV_shader_atomic_counters
+#define GL_NV_shader_atomic_counters 1
+#endif
+
+#ifndef GL_NV_deep_texture3D
+#define GL_NV_deep_texture3D 1
+#endif
+
+#ifndef GL_NVX_conditional_render
+#define GL_NVX_conditional_render 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glBeginConditionalRenderNVX (GLuint id);
+GLAPI void APIENTRY glEndConditionalRenderNVX (void);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLBEGINCONDITIONALRENDERNVXPROC) (GLuint id);
+typedef void (APIENTRYP PFNGLENDCONDITIONALRENDERNVXPROC) (void);
+#endif
+
+#ifndef GL_AMD_sparse_texture
+#define GL_AMD_sparse_texture 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glTexStorageSparseAMD (GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags);
+GLAPI void APIENTRY glTextureStorageSparseAMD (GLuint texture, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLTEXSTORAGESPARSEAMDPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags);
+typedef void (APIENTRYP PFNGLTEXTURESTORAGESPARSEAMDPROC) (GLuint texture, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags);
+#endif
+
+#ifndef GL_AMD_shader_trinary_minmax
+#define GL_AMD_shader_trinary_minmax 1
+#endif
+
+#ifndef GL_INTEL_map_texture
+#define GL_INTEL_map_texture 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glSyncTextureINTEL (GLuint texture);
+GLAPI void APIENTRY glUnmapTexture2DINTEL (GLuint texture, GLint level);
+GLAPI GLvoid* APIENTRY glMapTexture2DINTEL (GLuint texture, GLint level, GLbitfield access, const GLint *stride, const GLenum *layout);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLSYNCTEXTUREINTELPROC) (GLuint texture);
+typedef void (APIENTRYP PFNGLUNMAPTEXTURE2DINTELPROC) (GLuint texture, GLint level);
+typedef GLvoid* (APIENTRYP PFNGLMAPTEXTURE2DINTELPROC) (GLuint texture, GLint level, GLbitfield access, const GLint *stride, const GLenum *layout);
+#endif
+
+#ifndef GL_NV_draw_texture
+#define GL_NV_draw_texture 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI void APIENTRY glDrawTextureNV (GLuint texture, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1);
+#endif /* GL_GLEXT_PROTOTYPES */
+typedef void (APIENTRYP PFNGLDRAWTEXTURENVPROC) (GLuint texture, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1);
+#endif
+
#ifdef __cplusplus
}
diff --git a/src/gui/opengl/qopenglextensions_p.h b/src/gui/opengl/qopenglextensions_p.h
index a4e473c049..265771ce1b 100644
--- a/src/gui/opengl/qopenglextensions_p.h
+++ b/src/gui/opengl/qopenglextensions_p.h
@@ -55,8 +55,6 @@
#include "qopenglfunctions.h"
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -193,6 +191,4 @@ inline void QOpenGLExtensions::glGetBufferSubData(GLenum target, qopengl_GLintpt
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif // QOPENGL_EXTENSIONS_P_H
diff --git a/src/gui/opengl/qopenglframebufferobject.h b/src/gui/opengl/qopenglframebufferobject.h
index 9dbef318f0..e4fd7c8e95 100644
--- a/src/gui/opengl/qopenglframebufferobject.h
+++ b/src/gui/opengl/qopenglframebufferobject.h
@@ -49,8 +49,6 @@
#include <QtCore/qscopedpointer.h>
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -161,8 +159,6 @@ private:
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif // QT_NO_OPENGL
#endif // QOPENGLFRAMEBUFFEROBJECT_H
diff --git a/src/gui/opengl/qopenglfunctions.cpp b/src/gui/opengl/qopenglfunctions.cpp
index ee5855d866..3737df7497 100644
--- a/src/gui/opengl/qopenglfunctions.cpp
+++ b/src/gui/opengl/qopenglfunctions.cpp
@@ -289,7 +289,7 @@ static int qt_gl_resolve_features()
return features;
#else
int features = 0;
- //QOpenGLFormat::OpenGLVersionFlags versions = QOpenGLFormat::openGLVersionFlags();
+ QSurfaceFormat format = QOpenGLContext::currentContext()->format();
QOpenGLExtensionMatcher extensions;
// Recognize features by extension name.
@@ -327,6 +327,10 @@ static int qt_gl_resolve_features()
QOpenGLFunctions::StencilSeparate |
QOpenGLFunctions::BlendEquationSeparate |
QOpenGLFunctions::NPOTTextures;
+
+ if (format.majorVersion() >= 3)
+ features |= QOpenGLFunctions::Framebuffers;
+
return features;
#endif
}
@@ -349,10 +353,13 @@ static int qt_gl_resolve_extensions()
extensions |= QOpenGLExtensions::BGRATextureFormat;
#else
+ QSurfaceFormat format = QOpenGLContext::currentContext()->format();
extensions |= QOpenGLExtensions::ElementIndexUint | QOpenGLExtensions::MapBuffer;
// Recognize features by extension name.
- if (extensionMatcher.match("GL_ARB_framebuffer_object")) {
+ if (format.majorVersion() >= 3
+ || extensionMatcher.match("GL_ARB_framebuffer_object"))
+ {
extensions |= QOpenGLExtensions::FramebufferMultisample |
QOpenGLExtensions::FramebufferBlit |
QOpenGLExtensions::PackedDepthStencil;
diff --git a/src/gui/opengl/qopenglfunctions.h b/src/gui/opengl/qopenglfunctions.h
index 5f3b63d0a0..7d88f8b08b 100644
--- a/src/gui/opengl/qopenglfunctions.h
+++ b/src/gui/opengl/qopenglfunctions.h
@@ -71,31 +71,8 @@
#define Q_OPENGL_FUNCTIONS_DEBUG
#endif
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
-
-// Types that aren't defined in all system's gl.h files.
-typedef ptrdiff_t qopengl_GLintptr;
-typedef ptrdiff_t qopengl_GLsizeiptr;
-
-
-#if defined(APIENTRY) && !defined(QOPENGLF_APIENTRY)
-# define QOPENGLF_APIENTRY APIENTRY
-#elif defined(GL_APIENTRY) && !defined(QOPENGLF_APIENTRY)
-# define QOPENGLF_APIENTRY GL_APIENTRY
-#endif
-
-# ifndef QOPENGLF_APIENTRYP
-# ifdef QOPENGLF_APIENTRY
-# define QOPENGLF_APIENTRYP QOPENGLF_APIENTRY *
-# else
-# define QOPENGLF_APIENTRY
-# define QOPENGLF_APIENTRYP *
-# endif
-# endif
-
struct QOpenGLFunctionsPrivate;
// Undefine any macros from GLEW, qopenglextensions_p.h, etc that
@@ -1520,8 +1497,6 @@ inline void QOpenGLFunctions::glVertexAttribPointer(GLuint indx, GLint size, GLe
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif // QT_NO_OPENGL
#endif
diff --git a/src/gui/opengl/qopenglfunctions_1_0.cpp b/src/gui/opengl/qopenglfunctions_1_0.cpp
new file mode 100644
index 0000000000..84db0f2d65
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_0.cpp
@@ -0,0 +1,141 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_1_0.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_1_0
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_1_0 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_1_0::QOpenGLFunctions_1_0()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_1_0::~QOpenGLFunctions_1_0()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_1_0::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_1_0::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_1_0::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(1, 0))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_1_0::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(1, 0);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_1_0.h b/src/gui/opengl/qopenglfunctions_1_0.h
new file mode 100644
index 0000000000..189d06bfec
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_0.h
@@ -0,0 +1,1930 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_1_0_H
+#define QOPENGLVERSIONFUNCTIONS_1_0_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_1_0 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_1_0();
+ ~QOpenGLFunctions_1_0();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_1_0::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_0::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_1_0::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_1_0::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_1_0::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_1_0::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_1_0::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_0::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_0::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_1_0::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_1_0::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_1_0::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_1_0::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_1_0::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_1_0::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_1_0::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_1_0::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_1_0::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_1_0::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_1_0::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_1_0::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_1_0::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_1_0::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_0::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_0::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_0::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_0::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_1_0::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_1_0::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_1_0::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_1_0::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_1_0::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_1_0::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_1_0::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_1_0::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_1_0::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_0::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_0::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_1_0::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_0::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_0::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_1_0::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_1_0::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_0::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_1_0::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_1_0::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_1_0::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_0::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_0::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_0::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_0::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_0::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_1_0::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_0::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_0::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_0::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_1_0::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_1_0::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_1_0::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_0::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_0::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_0::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_0::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_0::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_0::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_0::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_0::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_0::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_1_0::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_1_0::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_1_0::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_1_0::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_1_0::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_1_0::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_1_0::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_1_0::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_1_0::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_1_0::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_1_0::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_1_0::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_0::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_1_0::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_0::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_0::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_1_0::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_1_0::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_0::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_0::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_0::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_0::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_0::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_0::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_0::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_1_0::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_1_0::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_1_0::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_1_0::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_1_0::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_0::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_1_0::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_1_0::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_1_0::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_1_0::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_1_0::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_1_0::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_1_0::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_1_0::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_1_1.cpp b/src/gui/opengl/qopenglfunctions_1_1.cpp
new file mode 100644
index 0000000000..b4860bcec7
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_1.cpp
@@ -0,0 +1,167 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_1_1.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_1_1
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_1_1 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_1_1::QOpenGLFunctions_1_1()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_1_1::~QOpenGLFunctions_1_1()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_1_1::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_1_1::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_1_1::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(1, 1))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_1_1::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(1, 1);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_1_1.h b/src/gui/opengl/qopenglfunctions_1_1.h
new file mode 100644
index 0000000000..fbe714c9ad
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_1.h
@@ -0,0 +1,2120 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_1_1_H
+#define QOPENGLVERSIONFUNCTIONS_1_1_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_1_1 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_1_1();
+ ~QOpenGLFunctions_1_1();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_1_1::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_1::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_1_1::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_1_1::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_1_1::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_1_1::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_1_1::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_1::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_1::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_1_1::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_1_1::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_1_1::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_1_1::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_1_1::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_1_1::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_1_1::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_1_1::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_1_1::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_1_1::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_1_1::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_1_1::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_1_1::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_1_1::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_1::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_1::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_1::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_1::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_1_1::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_1_1::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_1_1::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_1_1::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_1_1::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_1_1::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_1_1::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_1_1::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_1::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_1::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_1_1::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_1::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_1::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_1::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_1::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_1_1::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_1_1::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_1_1::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_1::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_1_1::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_1_1::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_1_1::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_1_1::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_1::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_1::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_1_1::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_1::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_1::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_1_1::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_1_1::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_1::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_1_1::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_1_1::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_1_1::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_1::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_1::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_1::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_1::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_1::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_1_1::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_1::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_1::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_1::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_1_1::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_1_1::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_1_1::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_1::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_1::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_1::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_1::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_1::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_1::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_1::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_1::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_1::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_1_1::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_1_1::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_1_1::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_1_1::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_1_1::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_1_1::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_1_1::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_1_1::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_1_1::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_1_1::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_1_1::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_1_1::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_1::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_1_1::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_1::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_1::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_1_1::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_1_1::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_1::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_1::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_1::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_1::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_1::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_1::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_1::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_1_1::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_1_1::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_1_1::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_1_1::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_1::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_1_1::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_1_1::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_1_1::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_1_1::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_1_1::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_1_1::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_1_1::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_1_1::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_1_1::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_1::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_1_1::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_1_1::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_1_1::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_1::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_1::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_1::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_1::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_1::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_1::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_1::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_1::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_1::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_1_2.cpp b/src/gui/opengl/qopenglfunctions_1_2.cpp
new file mode 100644
index 0000000000..064980bebe
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_2.cpp
@@ -0,0 +1,193 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_1_2.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_1_2
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_1_2 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_1_2::QOpenGLFunctions_1_2()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_1_2::~QOpenGLFunctions_1_2()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_1_2::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_1_2::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_1_2::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(1, 2))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_1_2::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(1, 2);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_1_2.h b/src/gui/opengl/qopenglfunctions_1_2.h
new file mode 100644
index 0000000000..b0b06da76e
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_2.h
@@ -0,0 +1,2358 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_1_2_H
+#define QOPENGLVERSIONFUNCTIONS_1_2_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_1_2 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_1_2();
+ ~QOpenGLFunctions_1_2();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_1_2::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_2::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_1_2::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_1_2::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_1_2::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_1_2::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_1_2::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_2::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_2::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_1_2::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_1_2::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_1_2::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_1_2::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_1_2::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_1_2::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_1_2::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_1_2::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_1_2::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_1_2::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_1_2::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_1_2::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_1_2::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_1_2::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_2::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_2::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_2::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_2::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_1_2::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_1_2::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_1_2::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_1_2::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_1_2::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_1_2::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_1_2::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_1_2::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_2::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_2::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_1_2::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_2::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_1_2::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_1_2::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_2::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_1_2::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_2::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_2::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_2::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_1_2::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_1_2::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_1_2::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_1_2::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_1_2::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_2::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_2::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_1_2::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_2::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_2::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_1_2::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_1_2::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_2::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_1_2::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_1_2::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_1_2::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_2::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_2::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_2::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_2::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_1_2::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_2::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_2::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_2::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_1_2::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_1_2::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_1_2::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_2::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_2::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_2::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_2::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_2::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_2::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_2::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_2::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_2::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_1_2::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_1_2::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_1_2::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_1_2::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_1_2::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_1_2::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_1_2::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_1_2::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_1_2::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_1_2::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_1_2::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_1_2::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_2::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_1_2::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_2::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_1_2::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_1_2::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_2::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_2::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_2::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_2::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_2::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_2::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_2::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_1_2::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_1_2::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_1_2::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_1_2::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_2::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_1_2::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_1_2::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_1_2::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_1_2::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_1_2::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_1_2::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_1_2::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_1_2::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_1_2::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_2::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_1_2::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_1_2::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_1_2::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_2::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_2::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_2::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_2::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_2::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_2::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_2::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_2::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_2::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_1_2::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_1_2::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_1_2::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_1_2::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_1_2::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_1_2::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_1_2::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_1_2::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_1_2::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_2::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_2::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_2::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_1_2::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_1_2::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_2::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_2::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_1_2::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_1_3.cpp b/src/gui/opengl/qopenglfunctions_1_3.cpp
new file mode 100644
index 0000000000..ace7507e35
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_3.cpp
@@ -0,0 +1,219 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_1_3.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_1_3
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_1_3 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_1_3::QOpenGLFunctions_1_3()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_1_3::~QOpenGLFunctions_1_3()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_1_3::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_1_3::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_1_3::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(1, 3))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_1_3::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(1, 3);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_1_3.h b/src/gui/opengl/qopenglfunctions_1_3.h
new file mode 100644
index 0000000000..362a60649b
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_3.h
@@ -0,0 +1,2644 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_1_3_H
+#define QOPENGLVERSIONFUNCTIONS_1_3_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_1_3 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_1_3();
+ ~QOpenGLFunctions_1_3();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_1_3::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_3::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_1_3::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_1_3::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_1_3::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_1_3::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_1_3::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_3::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_3::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_1_3::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_1_3::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_1_3::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_1_3::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_1_3::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_1_3::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_1_3::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_1_3::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_1_3::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_1_3::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_1_3::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_1_3::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_1_3::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_1_3::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_3::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_3::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_3::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_3::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_1_3::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_1_3::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_1_3::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_1_3::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_1_3::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_1_3::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_1_3::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_1_3::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_3::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_3::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_1_3::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_3::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_1_3::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_1_3::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_3::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_1_3::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_3::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_3::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_3::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_1_3::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_1_3::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_1_3::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_3::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_3::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_3::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_3::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_3::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_3::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_1_3::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_1_3::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_1_3::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_1_3::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_1_3::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_3::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_3::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_1_3::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_3::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_3::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_1_3::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_1_3::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_3::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_1_3::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_1_3::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_1_3::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_3::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_3::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_3::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_3::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_1_3::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_3::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_3::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_3::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_1_3::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_1_3::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_1_3::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_3::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_3::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_3::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_3::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_3::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_3::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_3::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_3::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_3::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_1_3::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_1_3::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_1_3::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_1_3::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_1_3::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_1_3::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_1_3::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_1_3::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_1_3::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_1_3::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_1_3::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_1_3::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_3::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_1_3::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_3::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_1_3::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_1_3::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_3::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_3::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_3::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_3::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_3::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_3::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_3::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_1_3::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_1_3::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_1_3::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_1_3::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_3::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_1_3::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_1_3::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_1_3::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_1_3::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_1_3::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_1_3::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_1_3::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_1_3::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_1_3::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_3::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_1_3::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_1_3::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_1_3::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_3::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_3::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_3::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_3::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_3::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_3::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_3::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_3::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_3::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_1_3::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_1_3::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_1_3::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_1_3::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_1_3::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_1_3::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_1_3::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_1_3::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_1_3::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_3::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_3::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_3::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_1_3::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_1_3::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_3::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_3::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_1_3::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_1_3::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_3::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_3::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_3::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_3::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_1_3::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_1_4.cpp b/src/gui/opengl/qopenglfunctions_1_4.cpp
new file mode 100644
index 0000000000..a27b81d6d8
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_4.cpp
@@ -0,0 +1,245 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_1_4.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_1_4
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_1_4 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_1_4::QOpenGLFunctions_1_4()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_1_4::~QOpenGLFunctions_1_4()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_1_4::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_1_4::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_1_4::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(1, 4))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_1_4::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(1, 4);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_1_4.h b/src/gui/opengl/qopenglfunctions_1_4.h
new file mode 100644
index 0000000000..fbb5b2e86c
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_4.h
@@ -0,0 +1,2924 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_1_4_H
+#define QOPENGLVERSIONFUNCTIONS_1_4_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_1_4 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_1_4();
+ ~QOpenGLFunctions_1_4();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_1_4::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_4::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_1_4::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_1_4::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_1_4::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_1_4::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_1_4::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_4::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_4::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_1_4::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_1_4::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_1_4::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_1_4::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_1_4::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_1_4::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_1_4::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_1_4::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_1_4::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_1_4::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_1_4::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_1_4::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_1_4::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_1_4::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_4::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_4::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_4::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_4::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_1_4::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_1_4::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_1_4::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_1_4::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_1_4::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_1_4::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_1_4::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_1_4::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_4::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_4::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_1_4::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_4::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_1_4::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_1_4::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_4::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_1_4::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_4::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_4::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_4::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_1_4::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_1_4::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_1_4::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_4::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_4::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_4::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_4::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_4::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_4::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_1_4::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_1_4::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_1_4::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_1_4::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_1_4::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_1_4::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_1_4::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_4::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_4::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_1_4::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_4::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_4::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_1_4::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_1_4::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_4::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_1_4::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_1_4::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_1_4::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_4::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_4::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_4::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_4::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_1_4::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_4::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_4::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_4::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_1_4::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_1_4::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_1_4::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_4::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_4::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_4::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_4::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_4::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_4::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_4::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_4::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_4::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_1_4::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_1_4::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_1_4::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_1_4::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_1_4::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_1_4::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_1_4::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_1_4::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_1_4::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_1_4::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_1_4::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_1_4::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_4::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_1_4::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_4::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_1_4::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_1_4::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_4::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_4::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_4::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_4::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_4::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_4::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_4::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_1_4::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_1_4::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_1_4::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_1_4::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_1_4::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_1_4::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_1_4::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_1_4::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_1_4::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_1_4::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_1_4::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_1_4::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_4::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_1_4::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_1_4::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_1_4::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_4::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_4::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_1_4::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_1_4::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_1_4::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_1_4::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_1_4::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_1_4::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_1_4::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_1_4::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_1_4::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_4::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_4::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_4::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_1_4::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_1_4::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_4::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_4::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_1_4::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_1_4::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_4::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_4::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_4::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_4::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_1_4::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_1_4::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_1_4::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_4::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_4::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_1_4::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_1_4::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_1_4::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_1_5.cpp b/src/gui/opengl/qopenglfunctions_1_5.cpp
new file mode 100644
index 0000000000..ceb004b02c
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_5.cpp
@@ -0,0 +1,258 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_1_5.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_1_5
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_1_5 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_1_5::QOpenGLFunctions_1_5()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_1_5::~QOpenGLFunctions_1_5()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_1_5::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_1_5::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_1_5::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(1, 5))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_1_5::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(1, 5);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_1_5.h b/src/gui/opengl/qopenglfunctions_1_5.h
new file mode 100644
index 0000000000..cdb2140a5c
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_1_5.h
@@ -0,0 +1,3047 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_1_5_H
+#define QOPENGLVERSIONFUNCTIONS_1_5_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_1_5 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_1_5();
+ ~QOpenGLFunctions_1_5();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_1_5::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_5::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_1_5::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_1_5::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_1_5::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_1_5::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_1_5::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_5::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_5::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_1_5::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_1_5::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_1_5::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_1_5::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_1_5::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_1_5::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_1_5::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_1_5::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_1_5::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_1_5::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_1_5::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_1_5::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_1_5::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_1_5::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_1_5::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_5::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_5::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_5::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_1_5::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_1_5::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_1_5::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_1_5::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_1_5::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_1_5::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_1_5::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_1_5::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_5::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_1_5::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_1_5::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_5::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_1_5::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_1_5::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_5::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_1_5::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_5::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_5::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_1_5::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_1_5::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_1_5::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_1_5::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_5::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_5::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_5::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_5::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_5::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_1_5::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_1_5::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_1_5::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_1_5::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_1_5::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_1_5::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_1_5::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_1_5::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_1_5::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_1_5::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_1_5::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_1_5::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_1_5::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_1_5::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_1_5::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_1_5::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_1_5::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_1_5::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_1_5::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_1_5::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_1_5::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_1_5::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_1_5::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_5::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_5::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_1_5::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_5::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_5::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_1_5::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_1_5::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_5::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_1_5::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_1_5::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_1_5::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_5::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_5::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_1_5::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_5::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_1_5::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_5::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_5::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_1_5::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_1_5::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_1_5::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_1_5::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_5::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_1_5::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_5::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_1_5::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_5::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_1_5::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_5::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_1_5::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_5::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_1_5::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_1_5::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_1_5::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_1_5::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_1_5::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_1_5::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_1_5::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_1_5::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_1_5::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_1_5::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_1_5::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_1_5::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_1_5::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_1_5::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_1_5::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_1_5::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_1_5::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_5::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_5::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_5::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_5::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_5::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_5::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_1_5::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_1_5::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_1_5::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_1_5::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_1_5::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_1_5::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_1_5::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_1_5::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_1_5::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_1_5::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_1_5::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_1_5::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_1_5::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_1_5::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_1_5::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_1_5::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_1_5::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_5::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_1_5::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_1_5::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_1_5::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_1_5::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_1_5::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_1_5::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_1_5::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_1_5::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_1_5::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_1_5::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_5::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_5::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_5::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_1_5::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_1_5::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_1_5::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_1_5::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_1_5::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_1_5::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_5::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_5::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_1_5::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_1_5::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_1_5::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_1_5::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_1_5::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_1_5::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_1_5::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_1_5::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_1_5::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_1_5::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_2_0.cpp b/src/gui/opengl/qopenglfunctions_2_0.cpp
new file mode 100644
index 0000000000..15c042177d
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_2_0.cpp
@@ -0,0 +1,284 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_2_0.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_2_0
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_2_0 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_2_0::QOpenGLFunctions_2_0()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_2_0::~QOpenGLFunctions_2_0()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_2_0::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_2_0::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_2_0::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(2, 0))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_2_0::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(2, 0);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_2_0.h b/src/gui/opengl/qopenglfunctions_2_0.h
new file mode 100644
index 0000000000..afc5eabb38
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_2_0.h
@@ -0,0 +1,3615 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_2_0_H
+#define QOPENGLVERSIONFUNCTIONS_2_0_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_2_0 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_2_0();
+ ~QOpenGLFunctions_2_0();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_2_0::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_0::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_2_0::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_2_0::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_2_0::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_2_0::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_0::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_2_0::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_2_0::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_2_0::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_2_0::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_2_0::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_2_0::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_2_0::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_2_0::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_2_0::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_2_0::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_2_0::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_2_0::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_2_0::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_2_0::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_2_0::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_2_0::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_0::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_0::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_0::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_2_0::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_2_0::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_2_0::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_2_0::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_2_0::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_2_0::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_2_0::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_2_0::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_2_0::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_2_0::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_0::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_2_0::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_2_0::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_2_0::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_2_0::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_0::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_0::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_2_0::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_2_0::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_2_0::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_2_0::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_0::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_0::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_0::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_0::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_0::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_0::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_2_0::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_2_0::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_2_0::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_2_0::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_2_0::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_2_0::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_2_0::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_2_0::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_2_0::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_2_0::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_2_0::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_2_0::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_2_0::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_2_0::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_2_0::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_2_0::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_2_0::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_2_0::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_2_0::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_2_0::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_2_0::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_2_0::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_2_0::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_2_0::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_2_0::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_2_0::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_2_0::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_2_0::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_2_0::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_2_0::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_2_0::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_2_0::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_2_0::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_2_0::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_2_0::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_2_0::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_2_0::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_2_0::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_2_0::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_2_0::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_2_0::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_2_0::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_2_0::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_2_0::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_2_0::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_2_0::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_2_0::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_2_0::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_2_0::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_2_0::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_2_0::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_2_0::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_2_0::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_2_0::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_2_0::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_2_0::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_2_0::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_2_0::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_2_0::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_2_0::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_2_0::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_2_0::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_2_0::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_2_0::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_2_0::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_2_0::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_2_0::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_2_0::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_2_0::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_2_0::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_2_0::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_2_0::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_2_0::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_2_0::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_2_0::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_2_0::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_2_0::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_2_0::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_2_0::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_2_0::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_2_0::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_2_0::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_2_0::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_2_0::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_2_0::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_2_0::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_2_0::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_2_0::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_2_0::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_2_0::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_2_0::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_2_0::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_2_0::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_2_0::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_2_0::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_2_0::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_2_0::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_2_0::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_2_0::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_2_0::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_2_0::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_2_0::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_2_0::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_2_0::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_2_0::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_2_0::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_2_0::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_2_0::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_2_0::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_2_0::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_2_0::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_2_0::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_2_0::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_2_0::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_2_0::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_2_0::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_2_0::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_2_0::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_2_0::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_2_0::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_2_0::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_2_0::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_2_0::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_2_0::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_2_0::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_2_0::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_2_0::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_2_0::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_2_0::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_2_0::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_2_0::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_2_0::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_2_0::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_2_0::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_2_0::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_2_0::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_0::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_2_0::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_2_0::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_2_0::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_2_0::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_2_0::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_2_0::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_2_0::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_2_0::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_2_0::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_0::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_0::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_2_0::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_2_0::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_2_0::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_2_0::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_2_0::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_2_1.cpp b/src/gui/opengl/qopenglfunctions_2_1.cpp
new file mode 100644
index 0000000000..143ac206ed
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_2_1.cpp
@@ -0,0 +1,297 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_2_1.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_2_1
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_2_1 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_2_1::QOpenGLFunctions_2_1()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_2_1::~QOpenGLFunctions_2_1()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_2_1::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_2_1::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_2_1::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(2, 1))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_2_1::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(2, 1);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_2_1.h b/src/gui/opengl/qopenglfunctions_2_1.h
new file mode 100644
index 0000000000..c1d291fba4
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_2_1.h
@@ -0,0 +1,3660 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_2_1_H
+#define QOPENGLVERSIONFUNCTIONS_2_1_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_2_1 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_2_1();
+ ~QOpenGLFunctions_2_1();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+ // OpenGL 2.1 deprecated functions
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_2_1::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_1::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_2_1::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_2_1::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_2_1::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_2_1::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_1::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_2_1::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_2_1::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_2_1::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_2_1::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_2_1::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_2_1::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_2_1::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_2_1::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_2_1::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_2_1::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_2_1::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_2_1::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_2_1::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_2_1::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_2_1::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_2_1::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_1::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_1::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_1::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_2_1::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_2_1::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_2_1::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_2_1::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_2_1::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_2_1::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_2_1::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_2_1::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_2_1::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_2_1::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_1::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_2_1::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_2_1::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_2_1::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_2_1::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_1::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_1::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_2_1::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_2_1::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_2_1::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_2_1::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_1::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_1::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_1::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_1::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_1::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_2_1::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_2_1::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_2_1::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_2_1::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_2_1::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_2_1::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_2_1::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_2_1::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_2_1::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_2_1::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_2_1::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_2_1::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_2_1::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_2_1::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_2_1::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_2_1::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_2_1::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_2_1::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_2_1::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_2_1::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_2_1::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_2_1::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_2_1::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_2_1::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_2_1::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_2_1::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_2_1::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_2_1::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_2_1::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_2_1::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_2_1::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_2_1::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_2_1::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_2_1::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_2_1::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_2_1::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_2_1::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_2_1::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_2_1::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_2_1::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_2_1::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_2_1::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_2_1::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_2_1::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_2_1::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_2_1::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_2_1::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_2_1::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_2_1::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_2_1::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_2_1::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_2_1::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_2_1::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_2_1::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_2_1::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_2_1::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_2_1::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_2_1::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_2_1::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_2_1::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_2_1::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_2_1::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_2_1::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_2_1::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_2_1::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_2_1::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_2_1::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_2_1::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_2_1::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_2_1::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_2_1::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_2_1::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_2_1::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_2_1::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_2_1::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_2_1::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_2_1::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_2_1::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_2_1::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_2_1::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_2_1::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_2_1::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_2_1::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_2_1::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_2_1::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_2_1::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_2_1::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_2_1::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_2_1::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_2_1::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_2_1::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_2_1::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_2_1::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_2_1::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_2_1::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_2_1::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_2_1::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_2_1::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_2_1::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_2_1::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_2_1::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_2_1::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_2_1::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_2_1::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_2_1::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_2_1::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_2_1::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_2_1::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_2_1::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_2_1::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_2_1::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_2_1::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_2_1::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_2_1::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_2_1::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_2_1::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_2_1::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_2_1::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_2_1::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_2_1::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_2_1::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_2_1::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_2_1::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_2_1::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_2_1::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_2_1::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_2_1::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_2_1::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_2_1::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_2_1::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_2_1::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_2_1::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_2_1::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_2_1::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_2_1::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_2_1::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_2_1::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_2_1::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_2_1::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_2_1::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_2_1::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_2_1::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_2_1::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_2_1::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_2_1::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_2_1::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_2_1::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_2_1::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_2_1::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_2_1::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_2_1::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_2_1::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_2_1::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_2_1::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_2_1::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_2_1::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+// OpenGL 2.1 deprecated functions
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_3_0.cpp b/src/gui/opengl/qopenglfunctions_3_0.cpp
new file mode 100644
index 0000000000..e13122e683
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_0.cpp
@@ -0,0 +1,323 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_3_0.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_3_0
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_3_0 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_3_0::QOpenGLFunctions_3_0()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+ , d_3_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_3_0::~QOpenGLFunctions_3_0()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+ if (d_3_0_Deprecated && !d_3_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Deprecated->context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ delete d_3_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_3_0::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_3_0::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_3_0_Deprecated = static_cast<QOpenGLFunctions_3_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_3_0::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(3, 0))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_3_0::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(3, 0);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_3_0.h b/src/gui/opengl/qopenglfunctions_3_0.h
new file mode 100644
index 0000000000..f586bdec58
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_0.h
@@ -0,0 +1,4174 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_3_0_H
+#define QOPENGLVERSIONFUNCTIONS_3_0_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_3_0 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_3_0();
+ ~QOpenGLFunctions_3_0();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+ // OpenGL 2.1 deprecated functions
+
+ // OpenGL 3.0 deprecated functions
+ void glVertexAttribI4usv(GLuint index, const GLushort *v);
+ void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttribI4sv(GLuint index, const GLshort *v);
+ void glVertexAttribI4bv(GLuint index, const GLbyte *v);
+ void glVertexAttribI4uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI3uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI2uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI1uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI4iv(GLuint index, const GLint *v);
+ void glVertexAttribI3iv(GLuint index, const GLint *v);
+ void glVertexAttribI2iv(GLuint index, const GLint *v);
+ void glVertexAttribI1iv(GLuint index, const GLint *v);
+ void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
+ void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
+ void glVertexAttribI1ui(GLuint index, GLuint x);
+ void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
+ void glVertexAttribI2i(GLuint index, GLint x, GLint y);
+ void glVertexAttribI1i(GLuint index, GLint x);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+ QOpenGLFunctions_3_0_DeprecatedBackend* d_3_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_3_0::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_0::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_0::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_3_0::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_3_0::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_3_0::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_0::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_0::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_3_0::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_3_0::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_0::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_3_0::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_3_0::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_3_0::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_3_0::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_3_0::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_3_0::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_3_0::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_3_0::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_3_0::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_3_0::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_3_0::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_0::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_0::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_0::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_0::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_3_0::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_3_0::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_3_0::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_3_0::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_3_0::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_3_0::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_3_0::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_0::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_3_0::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_0::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_3_0::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_3_0::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_0::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_3_0::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_0::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_0::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_0::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_3_0::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_3_0::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_3_0::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_0::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_0::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_0::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_0::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_0::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_0::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_3_0::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_3_0::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_3_0::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_3_0::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_3_0::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_3_0::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_0::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_0::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_3_0::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_0::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_3_0::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_3_0::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_3_0::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_3_0::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_3_0::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_3_0::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_3_0::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_3_0::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_3_0::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_3_0::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_0::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_3_0::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_0::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_0::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_3_0::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_0::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_3_0::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_0::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_0::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_0::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_0::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_3_0::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_3_0::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_3_0::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_3_0::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_3_0::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_0::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_3_0::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_0::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_3_0::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_3_0::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_3_0::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_3_0::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_0::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_0::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_0::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_3_0::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_3_0::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_3_0::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_0::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_3_0::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_3_0::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_3_0::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_3_0::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_3_0::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_3_0::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_3_0::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_0::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_3_0::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_0::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_0::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_0::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_3_0::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_3_0::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_0::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_0::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_0::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_3_0::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_0::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_3_0::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_3_0::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_3_0::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_0::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_3_0::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_3_0::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_3_0::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_3_0::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_3_0::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_0::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_0::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_0::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_0::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_3_0::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_3_0::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_3_0::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_3_0::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_0::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_0::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_3_0::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_0::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_0::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_3_0::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_3_0::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_3_0::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_3_0::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_3_0::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_0::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_0::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_0::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_3_0::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_3_0::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_0::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_0::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_0::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_3_0::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_3_0::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_3_0::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_3_0::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_3_0::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_3_0::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_3_0::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_3_0::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_3_0::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_3_0::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_3_0::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_3_0::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_3_0::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_3_0::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_3_0::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_3_0::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_3_0::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_3_0::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_3_0::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_3_0::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_3_0::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_3_0::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_3_0::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_3_0::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_0::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_3_0::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_3_0::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_0::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_0::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_0::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_0::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_3_0::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_3_0::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_3_0::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_3_0::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_3_0::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_3_0::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_3_0::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_3_0::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_3_0::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_3_0::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_3_0::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_3_0::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_3_0::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_3_0::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_3_0::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_3_0::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_3_0::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_3_0::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_3_0::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_3_0::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_3_0::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_3_0::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_3_0::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_3_0::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_3_0::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_3_0::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_0::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_0::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_0::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_3_0::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_3_0::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_0::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_0::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_3_0::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_3_0::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_0::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_0::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_0::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_0::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_3_0::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_3_0::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_3_0::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_0::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_0::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_3_0::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_3_0::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_3_0::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_3_0::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+// OpenGL 2.1 deprecated functions
+
+// OpenGL 3.0 deprecated functions
+inline void QOpenGLFunctions_3_0::glVertexAttribI4usv(GLuint index, const GLushort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4usv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI4sv(GLuint index, const GLshort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI4bv(GLuint index, const GLbyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4bv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI3uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI2uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI1uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI4iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI3iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI2iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI1iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ d_3_0_Deprecated->VertexAttribI4ui(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ d_3_0_Deprecated->VertexAttribI3ui(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
+{
+ d_3_0_Deprecated->VertexAttribI2ui(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI1ui(GLuint index, GLuint x)
+{
+ d_3_0_Deprecated->VertexAttribI1ui(index, x);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ d_3_0_Deprecated->VertexAttribI4i(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
+{
+ d_3_0_Deprecated->VertexAttribI3i(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI2i(GLuint index, GLint x, GLint y)
+{
+ d_3_0_Deprecated->VertexAttribI2i(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_0::glVertexAttribI1i(GLuint index, GLint x)
+{
+ d_3_0_Deprecated->VertexAttribI1i(index, x);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_3_1.cpp b/src/gui/opengl/qopenglfunctions_3_1.cpp
new file mode 100644
index 0000000000..104029177c
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_1.cpp
@@ -0,0 +1,242 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_3_1.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_3_1
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_3_1 class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_3_1::QOpenGLFunctions_3_1()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+{
+}
+
+QOpenGLFunctions_3_1::~QOpenGLFunctions_3_1()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+}
+
+bool QOpenGLFunctions_3_1::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_3_1::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_3_1::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(3, 1))
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_3_1::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(3, 1);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_3_1.h b/src/gui/opengl/qopenglfunctions_3_1.h
new file mode 100644
index 0000000000..46beec85e0
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_1.h
@@ -0,0 +1,1592 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_3_1_H
+#define QOPENGLVERSIONFUNCTIONS_3_1_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_3_1 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_3_1();
+ ~QOpenGLFunctions_3_1();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_3_1::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_1::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_3_1::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_1::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_3_1::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_3_1::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_3_1::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_1::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_1::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_3_1::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_3_1::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_3_1::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_3_1::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_1::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_3_1::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_3_1::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_3_1::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_3_1::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_3_1::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_3_1::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_3_1::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_1::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_3_1::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_3_1::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_3_1::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_1::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_3_1::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_1::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_1::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_1::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_1::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_1::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_1::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_3_1::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_3_1::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_3_1::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_3_1::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_3_1::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_3_1::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_3_1::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_3_1::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_1::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_1::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_3_1::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_1::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_1::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_1::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_1::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_3_1::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_3_1::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_3_1::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_1::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_3_1::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_1::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_1::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_1::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_3_1::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_3_1::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_3_1::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_1::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_1::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_1::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_1::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_1::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_1::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_3_1::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_3_1::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_3_1::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_1::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_3_1::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_3_1::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_3_1::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_3_1::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_3_1::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_1::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_1::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_3_1::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_1::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_1::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_3_1::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_3_1::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_3_1::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_3_1::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_3_1::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_1::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_3_1::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_3_1::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_3_1::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_3_1::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_3_1::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_3_1::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_1::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_3_1::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_1::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_1::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_3_1::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_1::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_3_1::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_1::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_1::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_1::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_1::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_1::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_3_1::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_3_1::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_3_1::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_3_1::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_3_1::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_3_1::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_1::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_3_1::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_1::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_3_1::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_3_1::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_3_1::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_3_1::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_1::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_1::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_1::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_1::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_3_1::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_3_1::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_3_1::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_1::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_3_1::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_3_1::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_3_1::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_3_1::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_3_1::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_3_1::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_3_1::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_1::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_1::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_3_1::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_1::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_1::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_1::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_1::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_3_1::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_3_1::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_1::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_1::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_1::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_1::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_3_1::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_1::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_3_1::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_1::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_3_1::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_3_1::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_3_1::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_1::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_3_1::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_3_1::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_3_1::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_3_1::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_3_1::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_3_1::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_1::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_1::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_1::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_1::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_3_1::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_3_1::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_3_1::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_1::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_3_1::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_1::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_3_1::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_3_1::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_3_1::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_3_1::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_3_1::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_3_1::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_3_2_compatibility.cpp b/src/gui/opengl/qopenglfunctions_3_2_compatibility.cpp
new file mode 100644
index 0000000000..f808f2e6dd
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_2_compatibility.cpp
@@ -0,0 +1,350 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_3_2_compatibility.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_3_2_Compatibility
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_3_2_Compatibility class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_3_2_Compatibility::QOpenGLFunctions_3_2_Compatibility()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+ , d_3_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_3_2_Compatibility::~QOpenGLFunctions_3_2_Compatibility()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+ if (d_3_0_Deprecated && !d_3_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Deprecated->context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ delete d_3_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_3_2_Compatibility::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_3_2_Compatibility::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_3_0_Deprecated = static_cast<QOpenGLFunctions_3_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_3_2_Compatibility::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(3, 2))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_3_2_Compatibility::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(3, 2);
+ v.setProfile(QSurfaceFormat::CompatibilityProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_3_2_compatibility.h b/src/gui/opengl/qopenglfunctions_3_2_compatibility.h
new file mode 100644
index 0000000000..f279f1037a
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_2_compatibility.h
@@ -0,0 +1,4378 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_3_2_COMPATIBILITY_H
+#define QOPENGLVERSIONFUNCTIONS_3_2_COMPATIBILITY_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_3_2_Compatibility : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_3_2_Compatibility();
+ ~QOpenGLFunctions_3_2_Compatibility();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+ // OpenGL 2.1 deprecated functions
+
+ // OpenGL 3.0 deprecated functions
+ void glVertexAttribI4usv(GLuint index, const GLushort *v);
+ void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttribI4sv(GLuint index, const GLshort *v);
+ void glVertexAttribI4bv(GLuint index, const GLbyte *v);
+ void glVertexAttribI4uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI3uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI2uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI1uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI4iv(GLuint index, const GLint *v);
+ void glVertexAttribI3iv(GLuint index, const GLint *v);
+ void glVertexAttribI2iv(GLuint index, const GLint *v);
+ void glVertexAttribI1iv(GLuint index, const GLint *v);
+ void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
+ void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
+ void glVertexAttribI1ui(GLuint index, GLuint x);
+ void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
+ void glVertexAttribI2i(GLuint index, GLint x, GLint y);
+ void glVertexAttribI1i(GLuint index, GLint x);
+
+ // OpenGL 3.1 deprecated functions
+
+ // OpenGL 3.2 deprecated functions
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+ QOpenGLFunctions_3_0_DeprecatedBackend* d_3_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_2_Compatibility::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_3_2_Compatibility::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_3_2_Compatibility::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_3_2_Compatibility::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_3_2_Compatibility::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_3_2_Compatibility::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_3_2_Compatibility::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_3_2_Compatibility::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_3_2_Compatibility::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_2_Compatibility::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_3_2_Compatibility::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_3_2_Compatibility::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_3_2_Compatibility::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_3_2_Compatibility::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_3_2_Compatibility::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_3_2_Compatibility::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_3_2_Compatibility::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_3_2_Compatibility::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_3_2_Compatibility::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Compatibility::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_3_2_Compatibility::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_3_2_Compatibility::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+// OpenGL 2.1 deprecated functions
+
+// OpenGL 3.0 deprecated functions
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI4usv(GLuint index, const GLushort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4usv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI4sv(GLuint index, const GLshort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI4bv(GLuint index, const GLbyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4bv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI3uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI2uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI1uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI4iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI3iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI2iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI1iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ d_3_0_Deprecated->VertexAttribI4ui(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ d_3_0_Deprecated->VertexAttribI3ui(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
+{
+ d_3_0_Deprecated->VertexAttribI2ui(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI1ui(GLuint index, GLuint x)
+{
+ d_3_0_Deprecated->VertexAttribI1ui(index, x);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ d_3_0_Deprecated->VertexAttribI4i(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
+{
+ d_3_0_Deprecated->VertexAttribI3i(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI2i(GLuint index, GLint x, GLint y)
+{
+ d_3_0_Deprecated->VertexAttribI2i(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_2_Compatibility::glVertexAttribI1i(GLuint index, GLint x)
+{
+ d_3_0_Deprecated->VertexAttribI1i(index, x);
+}
+
+
+// OpenGL 3.1 deprecated functions
+
+// OpenGL 3.2 deprecated functions
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_3_2_core.cpp b/src/gui/opengl/qopenglfunctions_3_2_core.cpp
new file mode 100644
index 0000000000..0e1af4c28b
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_2_core.cpp
@@ -0,0 +1,256 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_3_2_core.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_3_2_Core
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_3_2_Core class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_3_2_Core::QOpenGLFunctions_3_2_Core()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+{
+}
+
+QOpenGLFunctions_3_2_Core::~QOpenGLFunctions_3_2_Core()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+}
+
+bool QOpenGLFunctions_3_2_Core::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_3_2_Core::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_3_2_Core::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(3, 2))
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_3_2_Core::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(3, 2);
+ v.setProfile(QSurfaceFormat::CoreProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_3_2_core.h b/src/gui/opengl/qopenglfunctions_3_2_core.h
new file mode 100644
index 0000000000..b3d9a5040c
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_2_core.h
@@ -0,0 +1,1711 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_3_2_CORE_H
+#define QOPENGLVERSIONFUNCTIONS_3_2_CORE_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_3_2_Core : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_3_2_Core();
+ ~QOpenGLFunctions_3_2_Core();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_3_2_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_2_Core::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_3_2_Core::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_3_2_Core::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_3_2_Core::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_3_2_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_3_2_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_3_2_Core::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_3_2_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_3_2_Core::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_3_2_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_3_2_Core::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_3_2_Core::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_3_2_Core::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_3_2_Core::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_3_2_Core::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_3_2_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_3_2_Core::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_2_Core::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_3_2_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_3_2_Core::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_3_2_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_3_2_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_3_2_Core::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_3_2_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_3_2_Core::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_3_2_Core::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_2_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_3_3_compatibility.cpp b/src/gui/opengl/qopenglfunctions_3_3_compatibility.cpp
new file mode 100644
index 0000000000..aa53b7d03b
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_3_compatibility.cpp
@@ -0,0 +1,363 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_3_3_compatibility.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_3_3_Compatibility
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_3_3_Compatibility class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_3_3_Compatibility::QOpenGLFunctions_3_3_Compatibility()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+ , d_3_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_3_3_Compatibility::~QOpenGLFunctions_3_3_Compatibility()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+ if (d_3_0_Deprecated && !d_3_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Deprecated->context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ delete d_3_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_3_3_Compatibility::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_3_3_Compatibility::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_3_0_Deprecated = static_cast<QOpenGLFunctions_3_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_3_3_Compatibility::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(3, 3))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_3_3_Compatibility::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(3, 3);
+ v.setProfile(QSurfaceFormat::CompatibilityProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_3_3_compatibility.h b/src/gui/opengl/qopenglfunctions_3_3_compatibility.h
new file mode 100644
index 0000000000..95e000f88d
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_3_compatibility.h
@@ -0,0 +1,4735 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_3_3_COMPATIBILITY_H
+#define QOPENGLVERSIONFUNCTIONS_3_3_COMPATIBILITY_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_3_3_Compatibility : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_3_3_Compatibility();
+ ~QOpenGLFunctions_3_3_Compatibility();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+ // OpenGL 2.1 deprecated functions
+
+ // OpenGL 3.0 deprecated functions
+ void glVertexAttribI4usv(GLuint index, const GLushort *v);
+ void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttribI4sv(GLuint index, const GLshort *v);
+ void glVertexAttribI4bv(GLuint index, const GLbyte *v);
+ void glVertexAttribI4uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI3uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI2uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI1uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI4iv(GLuint index, const GLint *v);
+ void glVertexAttribI3iv(GLuint index, const GLint *v);
+ void glVertexAttribI2iv(GLuint index, const GLint *v);
+ void glVertexAttribI1iv(GLuint index, const GLint *v);
+ void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
+ void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
+ void glVertexAttribI1ui(GLuint index, GLuint x);
+ void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
+ void glVertexAttribI2i(GLuint index, GLint x, GLint y);
+ void glVertexAttribI1i(GLuint index, GLint x);
+
+ // OpenGL 3.1 deprecated functions
+
+ // OpenGL 3.2 deprecated functions
+
+ // OpenGL 3.3 deprecated functions
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+ QOpenGLFunctions_3_0_DeprecatedBackend* d_3_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_3_Compatibility::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_3_3_Compatibility::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_3_3_Compatibility::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_3_3_Compatibility::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_3_3_Compatibility::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_3_3_Compatibility::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_3_3_Compatibility::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_3_3_Compatibility::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_3_3_Compatibility::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_3_Compatibility::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_3_3_Compatibility::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_3_3_Compatibility::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_3_3_Compatibility::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_3_3_Compatibility::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_3_3_Compatibility::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_3_3_Compatibility::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_3_3_Compatibility::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_3_3_Compatibility::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_3_3_Compatibility::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Compatibility::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_3_3_Compatibility::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_3_3_Compatibility::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+// OpenGL 2.1 deprecated functions
+
+// OpenGL 3.0 deprecated functions
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI4usv(GLuint index, const GLushort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4usv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI4sv(GLuint index, const GLshort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4sv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI4bv(GLuint index, const GLbyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4bv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI3uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI2uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI1uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1uiv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI4iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI3iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI2iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI1iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1iv(index, v);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ d_3_0_Deprecated->VertexAttribI4ui(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ d_3_0_Deprecated->VertexAttribI3ui(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
+{
+ d_3_0_Deprecated->VertexAttribI2ui(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI1ui(GLuint index, GLuint x)
+{
+ d_3_0_Deprecated->VertexAttribI1ui(index, x);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ d_3_0_Deprecated->VertexAttribI4i(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
+{
+ d_3_0_Deprecated->VertexAttribI3i(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI2i(GLuint index, GLint x, GLint y)
+{
+ d_3_0_Deprecated->VertexAttribI2i(index, x, y);
+}
+
+inline void QOpenGLFunctions_3_3_Compatibility::glVertexAttribI1i(GLuint index, GLint x)
+{
+ d_3_0_Deprecated->VertexAttribI1i(index, x);
+}
+
+
+// OpenGL 3.1 deprecated functions
+
+// OpenGL 3.2 deprecated functions
+
+// OpenGL 3.3 deprecated functions
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_3_3_core.cpp b/src/gui/opengl/qopenglfunctions_3_3_core.cpp
new file mode 100644
index 0000000000..d355a466c1
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_3_core.cpp
@@ -0,0 +1,269 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_3_3_core.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_3_3_Core
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_3_3_Core class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_3_3_Core::QOpenGLFunctions_3_3_Core()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+{
+}
+
+QOpenGLFunctions_3_3_Core::~QOpenGLFunctions_3_3_Core()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+}
+
+bool QOpenGLFunctions_3_3_Core::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_3_3_Core::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_3_3_Core::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(3, 3))
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_3_3_Core::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(3, 3);
+ v.setProfile(QSurfaceFormat::CoreProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_3_3_core.h b/src/gui/opengl/qopenglfunctions_3_3_core.h
new file mode 100644
index 0000000000..0ffb156831
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_3_3_core.h
@@ -0,0 +1,2064 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_3_3_CORE_H
+#define QOPENGLVERSIONFUNCTIONS_3_3_CORE_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_3_3_Core : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_3_3_Core();
+ ~QOpenGLFunctions_3_3_Core();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_3_3_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_3_Core::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_3_3_Core::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_3_3_Core::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_3_3_Core::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_3_3_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_3_3_Core::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_3_3_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_3_3_Core::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_3_3_Core::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_3_3_Core::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_3_3_Core::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_3_3_Core::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_3_3_Core::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_3_3_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_3_3_Core::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_3_3_Core::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_3_3_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_3_3_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_3_3_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_3_3_Core::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_3_3_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_3_3_Core::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_3_3_Core::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_3_3_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_3_3_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_4_0_compatibility.cpp b/src/gui/opengl/qopenglfunctions_4_0_compatibility.cpp
new file mode 100644
index 0000000000..af5d3eccc1
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_0_compatibility.cpp
@@ -0,0 +1,376 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_4_0_compatibility.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_4_0_Compatibility
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_4_0_Compatibility class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_4_0_Compatibility::QOpenGLFunctions_4_0_Compatibility()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_4_0_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+ , d_3_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_4_0_Compatibility::~QOpenGLFunctions_4_0_Compatibility()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_4_0_Core && !d_4_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_0_Core->context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ delete d_4_0_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+ if (d_3_0_Deprecated && !d_3_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Deprecated->context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ delete d_3_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_4_0_Compatibility::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_4_0_Compatibility::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus(), d);
+ }
+ d_4_0_Core = static_cast<QOpenGLFunctions_4_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_3_0_Deprecated = static_cast<QOpenGLFunctions_3_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_4_0_Compatibility::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(4, 0))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_4_0_Compatibility::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(4, 0);
+ v.setProfile(QSurfaceFormat::CompatibilityProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_4_0_compatibility.h b/src/gui/opengl/qopenglfunctions_4_0_compatibility.h
new file mode 100644
index 0000000000..a77a2951b1
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_0_compatibility.h
@@ -0,0 +1,5020 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_4_0_COMPATIBILITY_H
+#define QOPENGLVERSIONFUNCTIONS_4_0_COMPATIBILITY_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_4_0_Compatibility : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_4_0_Compatibility();
+ ~QOpenGLFunctions_4_0_Compatibility();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 4.0 core functions
+ void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void glEndQueryIndexed(GLenum target, GLuint index);
+ void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
+ void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
+ void glDrawTransformFeedback(GLenum mode, GLuint id);
+ void glResumeTransformFeedback();
+ void glPauseTransformFeedback();
+ GLboolean glIsTransformFeedback(GLuint id);
+ void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
+ void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ void glBindTransformFeedback(GLenum target, GLuint id);
+ void glPatchParameterfv(GLenum pname, const GLfloat *values);
+ void glPatchParameteri(GLenum pname, GLint value);
+ void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
+ void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
+ void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
+ void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void glUniform2d(GLint location, GLdouble x, GLdouble y);
+ void glUniform1d(GLint location, GLdouble x);
+ void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
+ void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
+ void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
+ void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void glBlendEquationi(GLuint buf, GLenum mode);
+ void glMinSampleShading(GLfloat value);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+ // OpenGL 2.1 deprecated functions
+
+ // OpenGL 3.0 deprecated functions
+ void glVertexAttribI4usv(GLuint index, const GLushort *v);
+ void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttribI4sv(GLuint index, const GLshort *v);
+ void glVertexAttribI4bv(GLuint index, const GLbyte *v);
+ void glVertexAttribI4uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI3uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI2uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI1uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI4iv(GLuint index, const GLint *v);
+ void glVertexAttribI3iv(GLuint index, const GLint *v);
+ void glVertexAttribI2iv(GLuint index, const GLint *v);
+ void glVertexAttribI1iv(GLuint index, const GLint *v);
+ void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
+ void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
+ void glVertexAttribI1ui(GLuint index, GLuint x);
+ void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
+ void glVertexAttribI2i(GLuint index, GLint x, GLint y);
+ void glVertexAttribI1i(GLuint index, GLint x);
+
+ // OpenGL 3.1 deprecated functions
+
+ // OpenGL 3.2 deprecated functions
+
+ // OpenGL 3.3 deprecated functions
+
+ // OpenGL 4.0 deprecated functions
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+ QOpenGLFunctions_3_0_DeprecatedBackend* d_3_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_0_Compatibility::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_4_0_Compatibility::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_4_0_Compatibility::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_4_0_Compatibility::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_4_0_Compatibility::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Compatibility::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Compatibility::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_4_0_Compatibility::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_4_0_Compatibility::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_0_Compatibility::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_4_0_Compatibility::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Compatibility::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_4_0_Compatibility::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_4_0_Compatibility::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_4_0_Compatibility::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 4.0 core functions
+inline void QOpenGLFunctions_4_0_Compatibility::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
+{
+ d_4_0_Core->GetQueryIndexediv(target, index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEndQueryIndexed(GLenum target, GLuint index)
+{
+ d_4_0_Core->EndQueryIndexed(target, index);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
+{
+ d_4_0_Core->BeginQueryIndexed(target, index, id);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
+{
+ d_4_0_Core->DrawTransformFeedbackStream(mode, id, stream);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ d_4_0_Core->DrawTransformFeedback(mode, id);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glResumeTransformFeedback()
+{
+ d_4_0_Core->ResumeTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPauseTransformFeedback()
+{
+ d_4_0_Core->PauseTransformFeedback();
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsTransformFeedback(GLuint id)
+{
+ return d_4_0_Core->IsTransformFeedback(id);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ d_4_0_Core->GenTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ d_4_0_Core->DeleteTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBindTransformFeedback(GLenum target, GLuint id)
+{
+ d_4_0_Core->BindTransformFeedback(target, id);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPatchParameterfv(GLenum pname, const GLfloat *values)
+{
+ d_4_0_Core->PatchParameterfv(pname, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPatchParameteri(GLenum pname, GLint value)
+{
+ d_4_0_Core->PatchParameteri(pname, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetProgramStageiv(program, shadertype, pname, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
+{
+ d_4_0_Core->GetUniformSubroutineuiv(shadertype, location, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
+{
+ d_4_0_Core->UniformSubroutinesuiv(shadertype, count, indices);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Compatibility::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineIndex(program, shadertype, name);
+}
+
+inline GLint QOpenGLFunctions_4_0_Compatibility::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineUniformLocation(program, shadertype, name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
+{
+ d_4_0_Core->GetUniformdv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform4dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform3dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform2dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform1dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_0_Core->Uniform4d(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_0_Core->Uniform3d(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform2d(GLint location, GLdouble x, GLdouble y)
+{
+ d_4_0_Core->Uniform2d(location, x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glUniform1d(GLint location, GLdouble x)
+{
+ d_4_0_Core->Uniform1d(location, x);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawElementsIndirect(mode, type, indirect);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawArraysIndirect(mode, indirect);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ d_4_0_Core->BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
+{
+ d_4_0_Core->BlendFunci(buf, src, dst);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
+{
+ d_4_0_Core->BlendEquationSeparatei(buf, modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBlendEquationi(GLuint buf, GLenum mode)
+{
+ d_4_0_Core->BlendEquationi(buf, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMinSampleShading(GLfloat value)
+{
+ d_4_0_Core->MinSampleShading(value);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_4_0_Compatibility::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_4_0_Compatibility::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Compatibility::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_4_0_Compatibility::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Compatibility::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_4_0_Compatibility::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_4_0_Compatibility::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+// OpenGL 2.1 deprecated functions
+
+// OpenGL 3.0 deprecated functions
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI4usv(GLuint index, const GLushort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4usv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI4sv(GLuint index, const GLshort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI4bv(GLuint index, const GLbyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4bv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI3uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI2uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI1uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI4iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI3iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI2iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI1iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ d_3_0_Deprecated->VertexAttribI4ui(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ d_3_0_Deprecated->VertexAttribI3ui(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
+{
+ d_3_0_Deprecated->VertexAttribI2ui(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI1ui(GLuint index, GLuint x)
+{
+ d_3_0_Deprecated->VertexAttribI1ui(index, x);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ d_3_0_Deprecated->VertexAttribI4i(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
+{
+ d_3_0_Deprecated->VertexAttribI3i(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI2i(GLuint index, GLint x, GLint y)
+{
+ d_3_0_Deprecated->VertexAttribI2i(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Compatibility::glVertexAttribI1i(GLuint index, GLint x)
+{
+ d_3_0_Deprecated->VertexAttribI1i(index, x);
+}
+
+
+// OpenGL 3.1 deprecated functions
+
+// OpenGL 3.2 deprecated functions
+
+// OpenGL 3.3 deprecated functions
+
+// OpenGL 4.0 deprecated functions
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_4_0_core.cpp b/src/gui/opengl/qopenglfunctions_4_0_core.cpp
new file mode 100644
index 0000000000..b018531b37
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_0_core.cpp
@@ -0,0 +1,282 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_4_0_core.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_4_0_Core
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_4_0_Core class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_4_0_Core::QOpenGLFunctions_4_0_Core()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_4_0_Core(0)
+{
+}
+
+QOpenGLFunctions_4_0_Core::~QOpenGLFunctions_4_0_Core()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_4_0_Core && !d_4_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_0_Core->context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ delete d_4_0_Core;
+ }
+}
+
+bool QOpenGLFunctions_4_0_Core::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_4_0_Core::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus(), d);
+ }
+ d_4_0_Core = static_cast<QOpenGLFunctions_4_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_4_0_Core::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(4, 0))
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_4_0_Core::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(4, 0);
+ v.setProfile(QSurfaceFormat::CoreProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_4_0_core.h b/src/gui/opengl/qopenglfunctions_4_0_core.h
new file mode 100644
index 0000000000..64b75a7374
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_0_core.h
@@ -0,0 +1,2345 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_4_0_CORE_H
+#define QOPENGLVERSIONFUNCTIONS_4_0_CORE_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_4_0_Core : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_4_0_Core();
+ ~QOpenGLFunctions_4_0_Core();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 4.0 core functions
+ void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void glEndQueryIndexed(GLenum target, GLuint index);
+ void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
+ void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
+ void glDrawTransformFeedback(GLenum mode, GLuint id);
+ void glResumeTransformFeedback();
+ void glPauseTransformFeedback();
+ GLboolean glIsTransformFeedback(GLuint id);
+ void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
+ void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ void glBindTransformFeedback(GLenum target, GLuint id);
+ void glPatchParameterfv(GLenum pname, const GLfloat *values);
+ void glPatchParameteri(GLenum pname, GLint value);
+ void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
+ void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
+ void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
+ void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void glUniform2d(GLint location, GLdouble x, GLdouble y);
+ void glUniform1d(GLint location, GLdouble x);
+ void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
+ void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
+ void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
+ void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void glBlendEquationi(GLuint buf, GLenum mode);
+ void glMinSampleShading(GLfloat value);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_4_0_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_0_Core::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_4_0_Core::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_4_0_Core::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_4_0_Core::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_4_0_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_4_0_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_4_0_Core::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_4_0_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_4_0_Core::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_4_0_Core::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_4_0_Core::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Core::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Core::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_4_0_Core::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_4_0_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_4_0_Core::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_0_Core::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_4_0_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_4_0_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_4_0_Core::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_4_0_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_4_0_Core::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_4_0_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 4.0 core functions
+inline void QOpenGLFunctions_4_0_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
+{
+ d_4_0_Core->GetQueryIndexediv(target, index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glEndQueryIndexed(GLenum target, GLuint index)
+{
+ d_4_0_Core->EndQueryIndexed(target, index);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
+{
+ d_4_0_Core->BeginQueryIndexed(target, index, id);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
+{
+ d_4_0_Core->DrawTransformFeedbackStream(mode, id, stream);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ d_4_0_Core->DrawTransformFeedback(mode, id);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glResumeTransformFeedback()
+{
+ d_4_0_Core->ResumeTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPauseTransformFeedback()
+{
+ d_4_0_Core->PauseTransformFeedback();
+}
+
+inline GLboolean QOpenGLFunctions_4_0_Core::glIsTransformFeedback(GLuint id)
+{
+ return d_4_0_Core->IsTransformFeedback(id);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ d_4_0_Core->GenTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ d_4_0_Core->DeleteTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBindTransformFeedback(GLenum target, GLuint id)
+{
+ d_4_0_Core->BindTransformFeedback(target, id);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
+{
+ d_4_0_Core->PatchParameterfv(pname, values);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glPatchParameteri(GLenum pname, GLint value)
+{
+ d_4_0_Core->PatchParameteri(pname, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetProgramStageiv(program, shadertype, pname, values);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
+{
+ d_4_0_Core->GetUniformSubroutineuiv(shadertype, location, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
+{
+ d_4_0_Core->UniformSubroutinesuiv(shadertype, count, indices);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
+}
+
+inline GLuint QOpenGLFunctions_4_0_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineIndex(program, shadertype, name);
+}
+
+inline GLint QOpenGLFunctions_4_0_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineUniformLocation(program, shadertype, name);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
+{
+ d_4_0_Core->GetUniformdv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform4dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform3dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform2dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform1dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_0_Core->Uniform4d(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_0_Core->Uniform3d(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
+{
+ d_4_0_Core->Uniform2d(location, x, y);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glUniform1d(GLint location, GLdouble x)
+{
+ d_4_0_Core->Uniform1d(location, x);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawElementsIndirect(mode, type, indirect);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawArraysIndirect(mode, indirect);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ d_4_0_Core->BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
+{
+ d_4_0_Core->BlendFunci(buf, src, dst);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
+{
+ d_4_0_Core->BlendEquationSeparatei(buf, modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glBlendEquationi(GLuint buf, GLenum mode)
+{
+ d_4_0_Core->BlendEquationi(buf, mode);
+}
+
+inline void QOpenGLFunctions_4_0_Core::glMinSampleShading(GLfloat value)
+{
+ d_4_0_Core->MinSampleShading(value);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_4_1_compatibility.cpp b/src/gui/opengl/qopenglfunctions_4_1_compatibility.cpp
new file mode 100644
index 0000000000..27c90adc5a
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_1_compatibility.cpp
@@ -0,0 +1,389 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_4_1_compatibility.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_4_1_Compatibility
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_4_1_Compatibility class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_4_1_Compatibility::QOpenGLFunctions_4_1_Compatibility()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_4_0_Core(0)
+ , d_4_1_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+ , d_3_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_4_1_Compatibility::~QOpenGLFunctions_4_1_Compatibility()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_4_0_Core && !d_4_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_0_Core->context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ delete d_4_0_Core;
+ }
+ if (d_4_1_Core && !d_4_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_1_Core->context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ delete d_4_1_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+ if (d_3_0_Deprecated && !d_3_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Deprecated->context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ delete d_3_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_4_1_Compatibility::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_4_1_Compatibility::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus(), d);
+ }
+ d_4_0_Core = static_cast<QOpenGLFunctions_4_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus(), d);
+ }
+ d_4_1_Core = static_cast<QOpenGLFunctions_4_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_3_0_Deprecated = static_cast<QOpenGLFunctions_3_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_4_1_Compatibility::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(4, 1))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_4_1_Compatibility::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(4, 1);
+ v.setProfile(QSurfaceFormat::CompatibilityProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_4_1_compatibility.h b/src/gui/opengl/qopenglfunctions_4_1_compatibility.h
new file mode 100644
index 0000000000..3d7f703b8d
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_1_compatibility.h
@@ -0,0 +1,5557 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_4_1_COMPATIBILITY_H
+#define QOPENGLVERSIONFUNCTIONS_4_1_COMPATIBILITY_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_4_1_Compatibility : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_4_1_Compatibility();
+ ~QOpenGLFunctions_4_1_Compatibility();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 4.0 core functions
+ void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void glEndQueryIndexed(GLenum target, GLuint index);
+ void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
+ void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
+ void glDrawTransformFeedback(GLenum mode, GLuint id);
+ void glResumeTransformFeedback();
+ void glPauseTransformFeedback();
+ GLboolean glIsTransformFeedback(GLuint id);
+ void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
+ void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ void glBindTransformFeedback(GLenum target, GLuint id);
+ void glPatchParameterfv(GLenum pname, const GLfloat *values);
+ void glPatchParameteri(GLenum pname, GLint value);
+ void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
+ void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
+ void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
+ void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void glUniform2d(GLint location, GLdouble x, GLdouble y);
+ void glUniform1d(GLint location, GLdouble x);
+ void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
+ void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
+ void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
+ void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void glBlendEquationi(GLuint buf, GLenum mode);
+ void glMinSampleShading(GLfloat value);
+
+ // OpenGL 4.1 core functions
+ void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
+ void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
+ void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
+ void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
+ void glScissorIndexedv(GLuint index, const GLint *v);
+ void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
+ void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
+ void glViewportIndexedfv(GLuint index, const GLfloat *v);
+ void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
+ void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
+ void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
+ void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glVertexAttribL4dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL3dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL2dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL1dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttribL1d(GLuint index, GLdouble x);
+ void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glValidateProgramPipeline(GLuint pipeline);
+ void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
+ void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
+ void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+ void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
+ void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
+ void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
+ void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
+ void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
+ void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
+ void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
+ void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform1i(GLuint program, GLint location, GLint v0);
+ void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
+ GLboolean glIsProgramPipeline(GLuint pipeline);
+ void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
+ void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
+ void glBindProgramPipeline(GLuint pipeline);
+ GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
+ void glActiveShaderProgram(GLuint pipeline, GLuint program);
+ void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
+ void glProgramParameteri(GLuint program, GLenum pname, GLint value);
+ void glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+ void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+ void glClearDepthf(GLfloat dd);
+ void glDepthRangef(GLfloat n, GLfloat f);
+ void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+ void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+ void glReleaseShaderCompiler();
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+ // OpenGL 2.1 deprecated functions
+
+ // OpenGL 3.0 deprecated functions
+ void glVertexAttribI4usv(GLuint index, const GLushort *v);
+ void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttribI4sv(GLuint index, const GLshort *v);
+ void glVertexAttribI4bv(GLuint index, const GLbyte *v);
+ void glVertexAttribI4uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI3uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI2uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI1uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI4iv(GLuint index, const GLint *v);
+ void glVertexAttribI3iv(GLuint index, const GLint *v);
+ void glVertexAttribI2iv(GLuint index, const GLint *v);
+ void glVertexAttribI1iv(GLuint index, const GLint *v);
+ void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
+ void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
+ void glVertexAttribI1ui(GLuint index, GLuint x);
+ void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
+ void glVertexAttribI2i(GLuint index, GLint x, GLint y);
+ void glVertexAttribI1i(GLuint index, GLint x);
+
+ // OpenGL 3.1 deprecated functions
+
+ // OpenGL 3.2 deprecated functions
+
+ // OpenGL 3.3 deprecated functions
+
+ // OpenGL 4.0 deprecated functions
+
+ // OpenGL 4.1 deprecated functions
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
+ QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+ QOpenGLFunctions_3_0_DeprecatedBackend* d_3_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_1_Compatibility::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_4_1_Compatibility::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_4_1_Compatibility::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_4_1_Compatibility::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_4_1_Compatibility::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Compatibility::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Compatibility::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_4_1_Compatibility::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_4_1_Compatibility::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_1_Compatibility::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_4_1_Compatibility::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Compatibility::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_4_1_Compatibility::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_4_1_Compatibility::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_4_1_Compatibility::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 4.0 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
+{
+ d_4_0_Core->GetQueryIndexediv(target, index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEndQueryIndexed(GLenum target, GLuint index)
+{
+ d_4_0_Core->EndQueryIndexed(target, index);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
+{
+ d_4_0_Core->BeginQueryIndexed(target, index, id);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
+{
+ d_4_0_Core->DrawTransformFeedbackStream(mode, id, stream);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ d_4_0_Core->DrawTransformFeedback(mode, id);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glResumeTransformFeedback()
+{
+ d_4_0_Core->ResumeTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPauseTransformFeedback()
+{
+ d_4_0_Core->PauseTransformFeedback();
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsTransformFeedback(GLuint id)
+{
+ return d_4_0_Core->IsTransformFeedback(id);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ d_4_0_Core->GenTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ d_4_0_Core->DeleteTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindTransformFeedback(GLenum target, GLuint id)
+{
+ d_4_0_Core->BindTransformFeedback(target, id);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPatchParameterfv(GLenum pname, const GLfloat *values)
+{
+ d_4_0_Core->PatchParameterfv(pname, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPatchParameteri(GLenum pname, GLint value)
+{
+ d_4_0_Core->PatchParameteri(pname, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetProgramStageiv(program, shadertype, pname, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
+{
+ d_4_0_Core->GetUniformSubroutineuiv(shadertype, location, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
+{
+ d_4_0_Core->UniformSubroutinesuiv(shadertype, count, indices);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Compatibility::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineIndex(program, shadertype, name);
+}
+
+inline GLint QOpenGLFunctions_4_1_Compatibility::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineUniformLocation(program, shadertype, name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
+{
+ d_4_0_Core->GetUniformdv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform4dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform3dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform2dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform1dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_0_Core->Uniform4d(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_0_Core->Uniform3d(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform2d(GLint location, GLdouble x, GLdouble y)
+{
+ d_4_0_Core->Uniform2d(location, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUniform1d(GLint location, GLdouble x)
+{
+ d_4_0_Core->Uniform1d(location, x);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawElementsIndirect(mode, type, indirect);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawArraysIndirect(mode, indirect);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ d_4_0_Core->BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
+{
+ d_4_0_Core->BlendFunci(buf, src, dst);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
+{
+ d_4_0_Core->BlendEquationSeparatei(buf, modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBlendEquationi(GLuint buf, GLenum mode)
+{
+ d_4_0_Core->BlendEquationi(buf, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMinSampleShading(GLfloat value)
+{
+ d_4_0_Core->MinSampleShading(value);
+}
+
+
+// OpenGL 4.1 core functions
+inline void QOpenGLFunctions_4_1_Compatibility::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
+{
+ d_4_1_Core->GetDoublei_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
+{
+ d_4_1_Core->GetFloati_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
+{
+ d_4_1_Core->DepthRangeIndexed(index, n, f);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
+{
+ d_4_1_Core->DepthRangeArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glScissorIndexedv(GLuint index, const GLint *v)
+{
+ d_4_1_Core->ScissorIndexedv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
+{
+ d_4_1_Core->ScissorIndexed(index, left, bottom, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
+{
+ d_4_1_Core->ScissorArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glViewportIndexedfv(GLuint index, const GLfloat *v)
+{
+ d_4_1_Core->ViewportIndexedfv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
+{
+ d_4_1_Core->ViewportIndexedf(index, x, y, w, h);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
+{
+ d_4_1_Core->ViewportArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_4_1_Core->GetVertexAttribLdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_4_1_Core->VertexAttribLPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribL4dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribL3dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribL2dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribL1dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_1_Core->VertexAttribL4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_1_Core->VertexAttribL3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_4_1_Core->VertexAttribL2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribL1d(GLuint index, GLdouble x)
+{
+ d_4_1_Core->VertexAttribL1d(index, x);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_4_1_Core->GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glValidateProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->ValidateProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform4uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_4_1_Core->ProgramUniform4ui(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform4dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
+{
+ d_4_1_Core->ProgramUniform4d(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform4fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_4_1_Core->ProgramUniform4f(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform4iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_4_1_Core->ProgramUniform4i(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform3uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_4_1_Core->ProgramUniform3ui(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform3dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
+{
+ d_4_1_Core->ProgramUniform3d(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform3fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_4_1_Core->ProgramUniform3f(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform3iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_4_1_Core->ProgramUniform3i(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform2uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
+{
+ d_4_1_Core->ProgramUniform2ui(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform2dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
+{
+ d_4_1_Core->ProgramUniform2d(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform2fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
+{
+ d_4_1_Core->ProgramUniform2f(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform2iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
+{
+ d_4_1_Core->ProgramUniform2i(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform1uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
+{
+ d_4_1_Core->ProgramUniform1ui(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform1dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
+{
+ d_4_1_Core->ProgramUniform1d(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform1fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
+{
+ d_4_1_Core->ProgramUniform1f(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform1iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramUniform1i(GLuint program, GLint location, GLint v0)
+{
+ d_4_1_Core->ProgramUniform1i(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
+{
+ d_4_1_Core->GetProgramPipelineiv(pipeline, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsProgramPipeline(GLuint pipeline)
+{
+ return d_4_1_Core->IsProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
+{
+ d_4_1_Core->GenProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
+{
+ d_4_1_Core->DeleteProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBindProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->BindProgramPipeline(pipeline);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Compatibility::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings)
+{
+ return d_4_1_Core->CreateShaderProgramv(type, count, strings);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glActiveShaderProgram(GLuint pipeline, GLuint program)
+{
+ d_4_1_Core->ActiveShaderProgram(pipeline, program);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
+{
+ d_4_1_Core->UseProgramStages(pipeline, stages, program);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ d_4_1_Core->ProgramParameteri(program, pname, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ProgramBinary(program, binaryFormat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ d_4_1_Core->GetProgramBinary(program, bufSize, length, binaryFormat, binary);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearDepthf(GLfloat dd)
+{
+ d_4_1_Core->ClearDepthf(dd);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDepthRangef(GLfloat n, GLfloat f)
+{
+ d_4_1_Core->DepthRangef(n, f);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ d_4_1_Core->GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ShaderBinary(count, shaders, binaryformat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glReleaseShaderCompiler()
+{
+ d_4_1_Core->ReleaseShaderCompiler();
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_4_1_Compatibility::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_4_1_Compatibility::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Compatibility::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_4_1_Compatibility::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Compatibility::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_4_1_Compatibility::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_4_1_Compatibility::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+// OpenGL 2.1 deprecated functions
+
+// OpenGL 3.0 deprecated functions
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI4usv(GLuint index, const GLushort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4usv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI4sv(GLuint index, const GLshort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI4bv(GLuint index, const GLbyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4bv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI3uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI2uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI1uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI4iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI3iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI2iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI1iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ d_3_0_Deprecated->VertexAttribI4ui(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ d_3_0_Deprecated->VertexAttribI3ui(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
+{
+ d_3_0_Deprecated->VertexAttribI2ui(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI1ui(GLuint index, GLuint x)
+{
+ d_3_0_Deprecated->VertexAttribI1ui(index, x);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ d_3_0_Deprecated->VertexAttribI4i(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
+{
+ d_3_0_Deprecated->VertexAttribI3i(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI2i(GLuint index, GLint x, GLint y)
+{
+ d_3_0_Deprecated->VertexAttribI2i(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Compatibility::glVertexAttribI1i(GLuint index, GLint x)
+{
+ d_3_0_Deprecated->VertexAttribI1i(index, x);
+}
+
+
+// OpenGL 3.1 deprecated functions
+
+// OpenGL 3.2 deprecated functions
+
+// OpenGL 3.3 deprecated functions
+
+// OpenGL 4.0 deprecated functions
+
+// OpenGL 4.1 deprecated functions
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_4_1_core.cpp b/src/gui/opengl/qopenglfunctions_4_1_core.cpp
new file mode 100644
index 0000000000..b36cb0de94
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_1_core.cpp
@@ -0,0 +1,295 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_4_1_core.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_4_1_Core
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_4_1_Core class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_4_1_Core::QOpenGLFunctions_4_1_Core()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_4_0_Core(0)
+ , d_4_1_Core(0)
+{
+}
+
+QOpenGLFunctions_4_1_Core::~QOpenGLFunctions_4_1_Core()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_4_0_Core && !d_4_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_0_Core->context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ delete d_4_0_Core;
+ }
+ if (d_4_1_Core && !d_4_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_1_Core->context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ delete d_4_1_Core;
+ }
+}
+
+bool QOpenGLFunctions_4_1_Core::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_4_1_Core::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus(), d);
+ }
+ d_4_0_Core = static_cast<QOpenGLFunctions_4_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus(), d);
+ }
+ d_4_1_Core = static_cast<QOpenGLFunctions_4_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_4_1_Core::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(4, 1))
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_4_1_Core::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(4, 1);
+ v.setProfile(QSurfaceFormat::CoreProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_4_1_core.h b/src/gui/opengl/qopenglfunctions_4_1_core.h
new file mode 100644
index 0000000000..90ec87568e
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_1_core.h
@@ -0,0 +1,2878 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_4_1_CORE_H
+#define QOPENGLVERSIONFUNCTIONS_4_1_CORE_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_4_1_Core : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_4_1_Core();
+ ~QOpenGLFunctions_4_1_Core();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 4.0 core functions
+ void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void glEndQueryIndexed(GLenum target, GLuint index);
+ void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
+ void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
+ void glDrawTransformFeedback(GLenum mode, GLuint id);
+ void glResumeTransformFeedback();
+ void glPauseTransformFeedback();
+ GLboolean glIsTransformFeedback(GLuint id);
+ void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
+ void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ void glBindTransformFeedback(GLenum target, GLuint id);
+ void glPatchParameterfv(GLenum pname, const GLfloat *values);
+ void glPatchParameteri(GLenum pname, GLint value);
+ void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
+ void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
+ void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
+ void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void glUniform2d(GLint location, GLdouble x, GLdouble y);
+ void glUniform1d(GLint location, GLdouble x);
+ void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
+ void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
+ void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
+ void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void glBlendEquationi(GLuint buf, GLenum mode);
+ void glMinSampleShading(GLfloat value);
+
+ // OpenGL 4.1 core functions
+ void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
+ void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
+ void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
+ void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
+ void glScissorIndexedv(GLuint index, const GLint *v);
+ void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
+ void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
+ void glViewportIndexedfv(GLuint index, const GLfloat *v);
+ void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
+ void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
+ void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
+ void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glVertexAttribL4dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL3dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL2dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL1dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttribL1d(GLuint index, GLdouble x);
+ void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glValidateProgramPipeline(GLuint pipeline);
+ void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
+ void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
+ void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+ void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
+ void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
+ void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
+ void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
+ void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
+ void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
+ void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
+ void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform1i(GLuint program, GLint location, GLint v0);
+ void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
+ GLboolean glIsProgramPipeline(GLuint pipeline);
+ void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
+ void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
+ void glBindProgramPipeline(GLuint pipeline);
+ GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
+ void glActiveShaderProgram(GLuint pipeline, GLuint program);
+ void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
+ void glProgramParameteri(GLuint program, GLenum pname, GLint value);
+ void glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+ void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+ void glClearDepthf(GLfloat dd);
+ void glDepthRangef(GLfloat n, GLfloat f);
+ void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+ void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+ void glReleaseShaderCompiler();
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
+ QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_4_1_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_1_Core::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_4_1_Core::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_4_1_Core::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_4_1_Core::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_4_1_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_4_1_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_4_1_Core::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_4_1_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_4_1_Core::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_4_1_Core::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_4_1_Core::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Core::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Core::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_4_1_Core::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_4_1_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_4_1_Core::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_1_Core::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_4_1_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_4_1_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_4_1_Core::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_4_1_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_4_1_Core::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_4_1_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 4.0 core functions
+inline void QOpenGLFunctions_4_1_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
+{
+ d_4_0_Core->GetQueryIndexediv(target, index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glEndQueryIndexed(GLenum target, GLuint index)
+{
+ d_4_0_Core->EndQueryIndexed(target, index);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
+{
+ d_4_0_Core->BeginQueryIndexed(target, index, id);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
+{
+ d_4_0_Core->DrawTransformFeedbackStream(mode, id, stream);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ d_4_0_Core->DrawTransformFeedback(mode, id);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glResumeTransformFeedback()
+{
+ d_4_0_Core->ResumeTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPauseTransformFeedback()
+{
+ d_4_0_Core->PauseTransformFeedback();
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsTransformFeedback(GLuint id)
+{
+ return d_4_0_Core->IsTransformFeedback(id);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ d_4_0_Core->GenTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ d_4_0_Core->DeleteTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindTransformFeedback(GLenum target, GLuint id)
+{
+ d_4_0_Core->BindTransformFeedback(target, id);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
+{
+ d_4_0_Core->PatchParameterfv(pname, values);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glPatchParameteri(GLenum pname, GLint value)
+{
+ d_4_0_Core->PatchParameteri(pname, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetProgramStageiv(program, shadertype, pname, values);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
+{
+ d_4_0_Core->GetUniformSubroutineuiv(shadertype, location, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
+{
+ d_4_0_Core->UniformSubroutinesuiv(shadertype, count, indices);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineIndex(program, shadertype, name);
+}
+
+inline GLint QOpenGLFunctions_4_1_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineUniformLocation(program, shadertype, name);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
+{
+ d_4_0_Core->GetUniformdv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform4dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform3dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform2dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform1dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_0_Core->Uniform4d(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_0_Core->Uniform3d(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
+{
+ d_4_0_Core->Uniform2d(location, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUniform1d(GLint location, GLdouble x)
+{
+ d_4_0_Core->Uniform1d(location, x);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawElementsIndirect(mode, type, indirect);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawArraysIndirect(mode, indirect);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ d_4_0_Core->BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
+{
+ d_4_0_Core->BlendFunci(buf, src, dst);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
+{
+ d_4_0_Core->BlendEquationSeparatei(buf, modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBlendEquationi(GLuint buf, GLenum mode)
+{
+ d_4_0_Core->BlendEquationi(buf, mode);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glMinSampleShading(GLfloat value)
+{
+ d_4_0_Core->MinSampleShading(value);
+}
+
+
+// OpenGL 4.1 core functions
+inline void QOpenGLFunctions_4_1_Core::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
+{
+ d_4_1_Core->GetDoublei_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
+{
+ d_4_1_Core->GetFloati_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
+{
+ d_4_1_Core->DepthRangeIndexed(index, n, f);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
+{
+ d_4_1_Core->DepthRangeArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glScissorIndexedv(GLuint index, const GLint *v)
+{
+ d_4_1_Core->ScissorIndexedv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
+{
+ d_4_1_Core->ScissorIndexed(index, left, bottom, width, height);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
+{
+ d_4_1_Core->ScissorArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glViewportIndexedfv(GLuint index, const GLfloat *v)
+{
+ d_4_1_Core->ViewportIndexedfv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
+{
+ d_4_1_Core->ViewportIndexedf(index, x, y, w, h);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
+{
+ d_4_1_Core->ViewportArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_4_1_Core->GetVertexAttribLdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_4_1_Core->VertexAttribLPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribL4dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribL3dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribL2dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribL1dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_1_Core->VertexAttribL4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_1_Core->VertexAttribL3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_4_1_Core->VertexAttribL2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glVertexAttribL1d(GLuint index, GLdouble x)
+{
+ d_4_1_Core->VertexAttribL1d(index, x);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_4_1_Core->GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glValidateProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->ValidateProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform4uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_4_1_Core->ProgramUniform4ui(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform4dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
+{
+ d_4_1_Core->ProgramUniform4d(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform4fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_4_1_Core->ProgramUniform4f(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform4iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_4_1_Core->ProgramUniform4i(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform3uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_4_1_Core->ProgramUniform3ui(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform3dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
+{
+ d_4_1_Core->ProgramUniform3d(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform3fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_4_1_Core->ProgramUniform3f(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform3iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_4_1_Core->ProgramUniform3i(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform2uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
+{
+ d_4_1_Core->ProgramUniform2ui(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform2dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
+{
+ d_4_1_Core->ProgramUniform2d(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform2fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
+{
+ d_4_1_Core->ProgramUniform2f(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform2iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
+{
+ d_4_1_Core->ProgramUniform2i(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform1uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
+{
+ d_4_1_Core->ProgramUniform1ui(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform1dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
+{
+ d_4_1_Core->ProgramUniform1d(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform1fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
+{
+ d_4_1_Core->ProgramUniform1f(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform1iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramUniform1i(GLuint program, GLint location, GLint v0)
+{
+ d_4_1_Core->ProgramUniform1i(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
+{
+ d_4_1_Core->GetProgramPipelineiv(pipeline, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_1_Core::glIsProgramPipeline(GLuint pipeline)
+{
+ return d_4_1_Core->IsProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
+{
+ d_4_1_Core->GenProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
+{
+ d_4_1_Core->DeleteProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glBindProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->BindProgramPipeline(pipeline);
+}
+
+inline GLuint QOpenGLFunctions_4_1_Core::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings)
+{
+ return d_4_1_Core->CreateShaderProgramv(type, count, strings);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glActiveShaderProgram(GLuint pipeline, GLuint program)
+{
+ d_4_1_Core->ActiveShaderProgram(pipeline, program);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
+{
+ d_4_1_Core->UseProgramStages(pipeline, stages, program);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ d_4_1_Core->ProgramParameteri(program, pname, value);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ProgramBinary(program, binaryFormat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ d_4_1_Core->GetProgramBinary(program, bufSize, length, binaryFormat, binary);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glClearDepthf(GLfloat dd)
+{
+ d_4_1_Core->ClearDepthf(dd);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glDepthRangef(GLfloat n, GLfloat f)
+{
+ d_4_1_Core->DepthRangef(n, f);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ d_4_1_Core->GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ShaderBinary(count, shaders, binaryformat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_1_Core::glReleaseShaderCompiler()
+{
+ d_4_1_Core->ReleaseShaderCompiler();
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_4_2_compatibility.cpp b/src/gui/opengl/qopenglfunctions_4_2_compatibility.cpp
new file mode 100644
index 0000000000..a415b24f33
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_2_compatibility.cpp
@@ -0,0 +1,402 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_4_2_compatibility.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_4_2_Compatibility
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_4_2_Compatibility class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_4_2_Compatibility::QOpenGLFunctions_4_2_Compatibility()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_4_0_Core(0)
+ , d_4_1_Core(0)
+ , d_4_2_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+ , d_3_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_4_2_Compatibility::~QOpenGLFunctions_4_2_Compatibility()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_4_0_Core && !d_4_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_0_Core->context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ delete d_4_0_Core;
+ }
+ if (d_4_1_Core && !d_4_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_1_Core->context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ delete d_4_1_Core;
+ }
+ if (d_4_2_Core && !d_4_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_2_Core->context, QOpenGLFunctions_4_2_CoreBackend::versionStatus());
+ delete d_4_2_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+ if (d_3_0_Deprecated && !d_3_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Deprecated->context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ delete d_3_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_4_2_Compatibility::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_4_2_Compatibility::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus(), d);
+ }
+ d_4_0_Core = static_cast<QOpenGLFunctions_4_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus(), d);
+ }
+ d_4_1_Core = static_cast<QOpenGLFunctions_4_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_2_CoreBackend::versionStatus(), d);
+ }
+ d_4_2_Core = static_cast<QOpenGLFunctions_4_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_3_0_Deprecated = static_cast<QOpenGLFunctions_3_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_4_2_Compatibility::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(4, 2))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_4_2_Compatibility::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(4, 2);
+ v.setProfile(QSurfaceFormat::CompatibilityProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_4_2_compatibility.h b/src/gui/opengl/qopenglfunctions_4_2_compatibility.h
new file mode 100644
index 0000000000..65bb26767a
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_2_compatibility.h
@@ -0,0 +1,5638 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_4_2_COMPATIBILITY_H
+#define QOPENGLVERSIONFUNCTIONS_4_2_COMPATIBILITY_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_4_2_Compatibility : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_4_2_Compatibility();
+ ~QOpenGLFunctions_4_2_Compatibility();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 4.0 core functions
+ void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void glEndQueryIndexed(GLenum target, GLuint index);
+ void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
+ void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
+ void glDrawTransformFeedback(GLenum mode, GLuint id);
+ void glResumeTransformFeedback();
+ void glPauseTransformFeedback();
+ GLboolean glIsTransformFeedback(GLuint id);
+ void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
+ void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ void glBindTransformFeedback(GLenum target, GLuint id);
+ void glPatchParameterfv(GLenum pname, const GLfloat *values);
+ void glPatchParameteri(GLenum pname, GLint value);
+ void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
+ void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
+ void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
+ void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void glUniform2d(GLint location, GLdouble x, GLdouble y);
+ void glUniform1d(GLint location, GLdouble x);
+ void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
+ void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
+ void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
+ void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void glBlendEquationi(GLuint buf, GLenum mode);
+ void glMinSampleShading(GLfloat value);
+
+ // OpenGL 4.1 core functions
+ void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
+ void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
+ void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
+ void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
+ void glScissorIndexedv(GLuint index, const GLint *v);
+ void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
+ void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
+ void glViewportIndexedfv(GLuint index, const GLfloat *v);
+ void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
+ void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
+ void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
+ void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glVertexAttribL4dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL3dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL2dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL1dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttribL1d(GLuint index, GLdouble x);
+ void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glValidateProgramPipeline(GLuint pipeline);
+ void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
+ void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
+ void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+ void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
+ void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
+ void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
+ void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
+ void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
+ void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
+ void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
+ void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform1i(GLuint program, GLint location, GLint v0);
+ void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
+ GLboolean glIsProgramPipeline(GLuint pipeline);
+ void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
+ void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
+ void glBindProgramPipeline(GLuint pipeline);
+ GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
+ void glActiveShaderProgram(GLuint pipeline, GLuint program);
+ void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
+ void glProgramParameteri(GLuint program, GLenum pname, GLint value);
+ void glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+ void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+ void glClearDepthf(GLfloat dd);
+ void glDepthRangef(GLfloat n, GLfloat f);
+ void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+ void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+ void glReleaseShaderCompiler();
+
+ // OpenGL 4.2 core functions
+ void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+ void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
+ void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
+ void glMemoryBarrier(GLbitfield barriers);
+ void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
+ void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
+ void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
+ void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
+ void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
+ void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
+ void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
+ void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+ // OpenGL 2.1 deprecated functions
+
+ // OpenGL 3.0 deprecated functions
+ void glVertexAttribI4usv(GLuint index, const GLushort *v);
+ void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttribI4sv(GLuint index, const GLshort *v);
+ void glVertexAttribI4bv(GLuint index, const GLbyte *v);
+ void glVertexAttribI4uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI3uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI2uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI1uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI4iv(GLuint index, const GLint *v);
+ void glVertexAttribI3iv(GLuint index, const GLint *v);
+ void glVertexAttribI2iv(GLuint index, const GLint *v);
+ void glVertexAttribI1iv(GLuint index, const GLint *v);
+ void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
+ void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
+ void glVertexAttribI1ui(GLuint index, GLuint x);
+ void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
+ void glVertexAttribI2i(GLuint index, GLint x, GLint y);
+ void glVertexAttribI1i(GLuint index, GLint x);
+
+ // OpenGL 3.1 deprecated functions
+
+ // OpenGL 3.2 deprecated functions
+
+ // OpenGL 3.3 deprecated functions
+
+ // OpenGL 4.0 deprecated functions
+
+ // OpenGL 4.1 deprecated functions
+
+ // OpenGL 4.2 deprecated functions
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
+ QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
+ QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+ QOpenGLFunctions_3_0_DeprecatedBackend* d_3_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_2_Compatibility::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_4_2_Compatibility::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_4_2_Compatibility::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_4_2_Compatibility::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_4_2_Compatibility::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Compatibility::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Compatibility::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_4_2_Compatibility::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_4_2_Compatibility::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_2_Compatibility::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_4_2_Compatibility::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Compatibility::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_4_2_Compatibility::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_4_2_Compatibility::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_4_2_Compatibility::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 4.0 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
+{
+ d_4_0_Core->GetQueryIndexediv(target, index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEndQueryIndexed(GLenum target, GLuint index)
+{
+ d_4_0_Core->EndQueryIndexed(target, index);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
+{
+ d_4_0_Core->BeginQueryIndexed(target, index, id);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
+{
+ d_4_0_Core->DrawTransformFeedbackStream(mode, id, stream);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ d_4_0_Core->DrawTransformFeedback(mode, id);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glResumeTransformFeedback()
+{
+ d_4_0_Core->ResumeTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPauseTransformFeedback()
+{
+ d_4_0_Core->PauseTransformFeedback();
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsTransformFeedback(GLuint id)
+{
+ return d_4_0_Core->IsTransformFeedback(id);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ d_4_0_Core->GenTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ d_4_0_Core->DeleteTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindTransformFeedback(GLenum target, GLuint id)
+{
+ d_4_0_Core->BindTransformFeedback(target, id);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPatchParameterfv(GLenum pname, const GLfloat *values)
+{
+ d_4_0_Core->PatchParameterfv(pname, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPatchParameteri(GLenum pname, GLint value)
+{
+ d_4_0_Core->PatchParameteri(pname, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetProgramStageiv(program, shadertype, pname, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
+{
+ d_4_0_Core->GetUniformSubroutineuiv(shadertype, location, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
+{
+ d_4_0_Core->UniformSubroutinesuiv(shadertype, count, indices);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Compatibility::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineIndex(program, shadertype, name);
+}
+
+inline GLint QOpenGLFunctions_4_2_Compatibility::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineUniformLocation(program, shadertype, name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
+{
+ d_4_0_Core->GetUniformdv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform4dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform3dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform2dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform1dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_0_Core->Uniform4d(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_0_Core->Uniform3d(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform2d(GLint location, GLdouble x, GLdouble y)
+{
+ d_4_0_Core->Uniform2d(location, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUniform1d(GLint location, GLdouble x)
+{
+ d_4_0_Core->Uniform1d(location, x);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawElementsIndirect(mode, type, indirect);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawArraysIndirect(mode, indirect);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ d_4_0_Core->BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
+{
+ d_4_0_Core->BlendFunci(buf, src, dst);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
+{
+ d_4_0_Core->BlendEquationSeparatei(buf, modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBlendEquationi(GLuint buf, GLenum mode)
+{
+ d_4_0_Core->BlendEquationi(buf, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMinSampleShading(GLfloat value)
+{
+ d_4_0_Core->MinSampleShading(value);
+}
+
+
+// OpenGL 4.1 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
+{
+ d_4_1_Core->GetDoublei_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
+{
+ d_4_1_Core->GetFloati_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
+{
+ d_4_1_Core->DepthRangeIndexed(index, n, f);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
+{
+ d_4_1_Core->DepthRangeArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glScissorIndexedv(GLuint index, const GLint *v)
+{
+ d_4_1_Core->ScissorIndexedv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
+{
+ d_4_1_Core->ScissorIndexed(index, left, bottom, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
+{
+ d_4_1_Core->ScissorArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glViewportIndexedfv(GLuint index, const GLfloat *v)
+{
+ d_4_1_Core->ViewportIndexedfv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
+{
+ d_4_1_Core->ViewportIndexedf(index, x, y, w, h);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
+{
+ d_4_1_Core->ViewportArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_4_1_Core->GetVertexAttribLdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_4_1_Core->VertexAttribLPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribL4dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribL3dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribL2dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribL1dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_1_Core->VertexAttribL4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_1_Core->VertexAttribL3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_4_1_Core->VertexAttribL2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribL1d(GLuint index, GLdouble x)
+{
+ d_4_1_Core->VertexAttribL1d(index, x);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_4_1_Core->GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glValidateProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->ValidateProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform4uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_4_1_Core->ProgramUniform4ui(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform4dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
+{
+ d_4_1_Core->ProgramUniform4d(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform4fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_4_1_Core->ProgramUniform4f(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform4iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_4_1_Core->ProgramUniform4i(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform3uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_4_1_Core->ProgramUniform3ui(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform3dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
+{
+ d_4_1_Core->ProgramUniform3d(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform3fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_4_1_Core->ProgramUniform3f(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform3iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_4_1_Core->ProgramUniform3i(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform2uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
+{
+ d_4_1_Core->ProgramUniform2ui(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform2dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
+{
+ d_4_1_Core->ProgramUniform2d(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform2fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
+{
+ d_4_1_Core->ProgramUniform2f(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform2iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
+{
+ d_4_1_Core->ProgramUniform2i(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform1uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
+{
+ d_4_1_Core->ProgramUniform1ui(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform1dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
+{
+ d_4_1_Core->ProgramUniform1d(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform1fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
+{
+ d_4_1_Core->ProgramUniform1f(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform1iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramUniform1i(GLuint program, GLint location, GLint v0)
+{
+ d_4_1_Core->ProgramUniform1i(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
+{
+ d_4_1_Core->GetProgramPipelineiv(pipeline, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsProgramPipeline(GLuint pipeline)
+{
+ return d_4_1_Core->IsProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
+{
+ d_4_1_Core->GenProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
+{
+ d_4_1_Core->DeleteProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->BindProgramPipeline(pipeline);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Compatibility::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings)
+{
+ return d_4_1_Core->CreateShaderProgramv(type, count, strings);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glActiveShaderProgram(GLuint pipeline, GLuint program)
+{
+ d_4_1_Core->ActiveShaderProgram(pipeline, program);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
+{
+ d_4_1_Core->UseProgramStages(pipeline, stages, program);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ d_4_1_Core->ProgramParameteri(program, pname, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ProgramBinary(program, binaryFormat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ d_4_1_Core->GetProgramBinary(program, bufSize, length, binaryFormat, binary);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearDepthf(GLfloat dd)
+{
+ d_4_1_Core->ClearDepthf(dd);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDepthRangef(GLfloat n, GLfloat f)
+{
+ d_4_1_Core->DepthRangef(n, f);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ d_4_1_Core->GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ShaderBinary(count, shaders, binaryformat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glReleaseShaderCompiler()
+{
+ d_4_1_Core->ReleaseShaderCompiler();
+}
+
+
+// OpenGL 4.2 core functions
+inline void QOpenGLFunctions_4_2_Compatibility::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
+{
+ d_4_2_Core->TexStorage3D(target, levels, internalformat, width, height, depth);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_4_2_Core->TexStorage2D(target, levels, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
+{
+ d_4_2_Core->TexStorage1D(target, levels, internalformat, width);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMemoryBarrier(GLbitfield barriers)
+{
+ d_4_2_Core->MemoryBarrier(barriers);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
+{
+ d_4_2_Core->BindImageTexture(unit, texture, level, layered, layer, access, format);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
+{
+ d_4_2_Core->GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
+{
+ d_4_2_Core->GetInternalformativ(target, internalformat, pname, bufSize, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
+{
+ d_4_2_Core->DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
+{
+ d_4_2_Core->DrawTransformFeedbackInstanced(mode, id, instancecount);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
+{
+ d_4_2_Core->DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
+{
+ d_4_2_Core->DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
+{
+ d_4_2_Core->DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_4_2_Compatibility::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_4_2_Compatibility::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Compatibility::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_4_2_Compatibility::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Compatibility::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_4_2_Compatibility::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_4_2_Compatibility::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+// OpenGL 2.1 deprecated functions
+
+// OpenGL 3.0 deprecated functions
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI4usv(GLuint index, const GLushort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4usv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI4sv(GLuint index, const GLshort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI4bv(GLuint index, const GLbyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4bv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI3uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI2uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI1uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI4iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI3iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI2iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI1iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ d_3_0_Deprecated->VertexAttribI4ui(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ d_3_0_Deprecated->VertexAttribI3ui(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
+{
+ d_3_0_Deprecated->VertexAttribI2ui(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI1ui(GLuint index, GLuint x)
+{
+ d_3_0_Deprecated->VertexAttribI1ui(index, x);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ d_3_0_Deprecated->VertexAttribI4i(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
+{
+ d_3_0_Deprecated->VertexAttribI3i(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI2i(GLuint index, GLint x, GLint y)
+{
+ d_3_0_Deprecated->VertexAttribI2i(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Compatibility::glVertexAttribI1i(GLuint index, GLint x)
+{
+ d_3_0_Deprecated->VertexAttribI1i(index, x);
+}
+
+
+// OpenGL 3.1 deprecated functions
+
+// OpenGL 3.2 deprecated functions
+
+// OpenGL 3.3 deprecated functions
+
+// OpenGL 4.0 deprecated functions
+
+// OpenGL 4.1 deprecated functions
+
+// OpenGL 4.2 deprecated functions
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_4_2_core.cpp b/src/gui/opengl/qopenglfunctions_4_2_core.cpp
new file mode 100644
index 0000000000..3600c20a41
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_2_core.cpp
@@ -0,0 +1,308 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_4_2_core.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_4_2_Core
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_4_2_Core class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_4_2_Core::QOpenGLFunctions_4_2_Core()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_4_0_Core(0)
+ , d_4_1_Core(0)
+ , d_4_2_Core(0)
+{
+}
+
+QOpenGLFunctions_4_2_Core::~QOpenGLFunctions_4_2_Core()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_4_0_Core && !d_4_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_0_Core->context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ delete d_4_0_Core;
+ }
+ if (d_4_1_Core && !d_4_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_1_Core->context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ delete d_4_1_Core;
+ }
+ if (d_4_2_Core && !d_4_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_2_Core->context, QOpenGLFunctions_4_2_CoreBackend::versionStatus());
+ delete d_4_2_Core;
+ }
+}
+
+bool QOpenGLFunctions_4_2_Core::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_4_2_Core::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus(), d);
+ }
+ d_4_0_Core = static_cast<QOpenGLFunctions_4_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus(), d);
+ }
+ d_4_1_Core = static_cast<QOpenGLFunctions_4_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_2_CoreBackend::versionStatus(), d);
+ }
+ d_4_2_Core = static_cast<QOpenGLFunctions_4_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_4_2_Core::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(4, 2))
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_4_2_Core::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(4, 2);
+ v.setProfile(QSurfaceFormat::CoreProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_4_2_core.h b/src/gui/opengl/qopenglfunctions_4_2_core.h
new file mode 100644
index 0000000000..2abe9cb033
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_2_core.h
@@ -0,0 +1,2955 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_4_2_CORE_H
+#define QOPENGLVERSIONFUNCTIONS_4_2_CORE_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_4_2_Core : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_4_2_Core();
+ ~QOpenGLFunctions_4_2_Core();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 4.0 core functions
+ void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void glEndQueryIndexed(GLenum target, GLuint index);
+ void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
+ void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
+ void glDrawTransformFeedback(GLenum mode, GLuint id);
+ void glResumeTransformFeedback();
+ void glPauseTransformFeedback();
+ GLboolean glIsTransformFeedback(GLuint id);
+ void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
+ void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ void glBindTransformFeedback(GLenum target, GLuint id);
+ void glPatchParameterfv(GLenum pname, const GLfloat *values);
+ void glPatchParameteri(GLenum pname, GLint value);
+ void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
+ void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
+ void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
+ void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void glUniform2d(GLint location, GLdouble x, GLdouble y);
+ void glUniform1d(GLint location, GLdouble x);
+ void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
+ void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
+ void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
+ void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void glBlendEquationi(GLuint buf, GLenum mode);
+ void glMinSampleShading(GLfloat value);
+
+ // OpenGL 4.1 core functions
+ void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
+ void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
+ void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
+ void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
+ void glScissorIndexedv(GLuint index, const GLint *v);
+ void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
+ void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
+ void glViewportIndexedfv(GLuint index, const GLfloat *v);
+ void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
+ void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
+ void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
+ void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glVertexAttribL4dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL3dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL2dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL1dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttribL1d(GLuint index, GLdouble x);
+ void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glValidateProgramPipeline(GLuint pipeline);
+ void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
+ void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
+ void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+ void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
+ void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
+ void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
+ void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
+ void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
+ void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
+ void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
+ void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform1i(GLuint program, GLint location, GLint v0);
+ void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
+ GLboolean glIsProgramPipeline(GLuint pipeline);
+ void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
+ void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
+ void glBindProgramPipeline(GLuint pipeline);
+ GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
+ void glActiveShaderProgram(GLuint pipeline, GLuint program);
+ void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
+ void glProgramParameteri(GLuint program, GLenum pname, GLint value);
+ void glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+ void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+ void glClearDepthf(GLfloat dd);
+ void glDepthRangef(GLfloat n, GLfloat f);
+ void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+ void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+ void glReleaseShaderCompiler();
+
+ // OpenGL 4.2 core functions
+ void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+ void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
+ void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
+ void glMemoryBarrier(GLbitfield barriers);
+ void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
+ void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
+ void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
+ void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
+ void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
+ void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
+ void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
+ void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
+ QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
+ QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_4_2_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_2_Core::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_4_2_Core::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_4_2_Core::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_4_2_Core::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_4_2_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_4_2_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_4_2_Core::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_4_2_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_4_2_Core::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_4_2_Core::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_4_2_Core::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Core::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Core::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_4_2_Core::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_4_2_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_4_2_Core::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_2_Core::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_4_2_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_4_2_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_4_2_Core::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_4_2_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_4_2_Core::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_4_2_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 4.0 core functions
+inline void QOpenGLFunctions_4_2_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
+{
+ d_4_0_Core->GetQueryIndexediv(target, index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glEndQueryIndexed(GLenum target, GLuint index)
+{
+ d_4_0_Core->EndQueryIndexed(target, index);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
+{
+ d_4_0_Core->BeginQueryIndexed(target, index, id);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
+{
+ d_4_0_Core->DrawTransformFeedbackStream(mode, id, stream);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ d_4_0_Core->DrawTransformFeedback(mode, id);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glResumeTransformFeedback()
+{
+ d_4_0_Core->ResumeTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPauseTransformFeedback()
+{
+ d_4_0_Core->PauseTransformFeedback();
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsTransformFeedback(GLuint id)
+{
+ return d_4_0_Core->IsTransformFeedback(id);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ d_4_0_Core->GenTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ d_4_0_Core->DeleteTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindTransformFeedback(GLenum target, GLuint id)
+{
+ d_4_0_Core->BindTransformFeedback(target, id);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
+{
+ d_4_0_Core->PatchParameterfv(pname, values);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glPatchParameteri(GLenum pname, GLint value)
+{
+ d_4_0_Core->PatchParameteri(pname, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetProgramStageiv(program, shadertype, pname, values);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
+{
+ d_4_0_Core->GetUniformSubroutineuiv(shadertype, location, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
+{
+ d_4_0_Core->UniformSubroutinesuiv(shadertype, count, indices);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineIndex(program, shadertype, name);
+}
+
+inline GLint QOpenGLFunctions_4_2_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineUniformLocation(program, shadertype, name);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
+{
+ d_4_0_Core->GetUniformdv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform4dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform3dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform2dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform1dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_0_Core->Uniform4d(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_0_Core->Uniform3d(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
+{
+ d_4_0_Core->Uniform2d(location, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUniform1d(GLint location, GLdouble x)
+{
+ d_4_0_Core->Uniform1d(location, x);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawElementsIndirect(mode, type, indirect);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawArraysIndirect(mode, indirect);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ d_4_0_Core->BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
+{
+ d_4_0_Core->BlendFunci(buf, src, dst);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
+{
+ d_4_0_Core->BlendEquationSeparatei(buf, modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBlendEquationi(GLuint buf, GLenum mode)
+{
+ d_4_0_Core->BlendEquationi(buf, mode);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMinSampleShading(GLfloat value)
+{
+ d_4_0_Core->MinSampleShading(value);
+}
+
+
+// OpenGL 4.1 core functions
+inline void QOpenGLFunctions_4_2_Core::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
+{
+ d_4_1_Core->GetDoublei_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
+{
+ d_4_1_Core->GetFloati_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
+{
+ d_4_1_Core->DepthRangeIndexed(index, n, f);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
+{
+ d_4_1_Core->DepthRangeArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glScissorIndexedv(GLuint index, const GLint *v)
+{
+ d_4_1_Core->ScissorIndexedv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
+{
+ d_4_1_Core->ScissorIndexed(index, left, bottom, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
+{
+ d_4_1_Core->ScissorArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glViewportIndexedfv(GLuint index, const GLfloat *v)
+{
+ d_4_1_Core->ViewportIndexedfv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
+{
+ d_4_1_Core->ViewportIndexedf(index, x, y, w, h);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
+{
+ d_4_1_Core->ViewportArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_4_1_Core->GetVertexAttribLdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_4_1_Core->VertexAttribLPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribL4dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribL3dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribL2dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribL1dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_1_Core->VertexAttribL4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_1_Core->VertexAttribL3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_4_1_Core->VertexAttribL2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glVertexAttribL1d(GLuint index, GLdouble x)
+{
+ d_4_1_Core->VertexAttribL1d(index, x);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_4_1_Core->GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glValidateProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->ValidateProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform4uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_4_1_Core->ProgramUniform4ui(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform4dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
+{
+ d_4_1_Core->ProgramUniform4d(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform4fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_4_1_Core->ProgramUniform4f(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform4iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_4_1_Core->ProgramUniform4i(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform3uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_4_1_Core->ProgramUniform3ui(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform3dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
+{
+ d_4_1_Core->ProgramUniform3d(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform3fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_4_1_Core->ProgramUniform3f(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform3iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_4_1_Core->ProgramUniform3i(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform2uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
+{
+ d_4_1_Core->ProgramUniform2ui(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform2dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
+{
+ d_4_1_Core->ProgramUniform2d(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform2fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
+{
+ d_4_1_Core->ProgramUniform2f(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform2iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
+{
+ d_4_1_Core->ProgramUniform2i(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform1uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
+{
+ d_4_1_Core->ProgramUniform1ui(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform1dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
+{
+ d_4_1_Core->ProgramUniform1d(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform1fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
+{
+ d_4_1_Core->ProgramUniform1f(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform1iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramUniform1i(GLuint program, GLint location, GLint v0)
+{
+ d_4_1_Core->ProgramUniform1i(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
+{
+ d_4_1_Core->GetProgramPipelineiv(pipeline, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_2_Core::glIsProgramPipeline(GLuint pipeline)
+{
+ return d_4_1_Core->IsProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
+{
+ d_4_1_Core->GenProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
+{
+ d_4_1_Core->DeleteProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->BindProgramPipeline(pipeline);
+}
+
+inline GLuint QOpenGLFunctions_4_2_Core::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings)
+{
+ return d_4_1_Core->CreateShaderProgramv(type, count, strings);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glActiveShaderProgram(GLuint pipeline, GLuint program)
+{
+ d_4_1_Core->ActiveShaderProgram(pipeline, program);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
+{
+ d_4_1_Core->UseProgramStages(pipeline, stages, program);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ d_4_1_Core->ProgramParameteri(program, pname, value);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ProgramBinary(program, binaryFormat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ d_4_1_Core->GetProgramBinary(program, bufSize, length, binaryFormat, binary);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glClearDepthf(GLfloat dd)
+{
+ d_4_1_Core->ClearDepthf(dd);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDepthRangef(GLfloat n, GLfloat f)
+{
+ d_4_1_Core->DepthRangef(n, f);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ d_4_1_Core->GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ShaderBinary(count, shaders, binaryformat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glReleaseShaderCompiler()
+{
+ d_4_1_Core->ReleaseShaderCompiler();
+}
+
+
+// OpenGL 4.2 core functions
+inline void QOpenGLFunctions_4_2_Core::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
+{
+ d_4_2_Core->TexStorage3D(target, levels, internalformat, width, height, depth);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_4_2_Core->TexStorage2D(target, levels, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
+{
+ d_4_2_Core->TexStorage1D(target, levels, internalformat, width);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glMemoryBarrier(GLbitfield barriers)
+{
+ d_4_2_Core->MemoryBarrier(barriers);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
+{
+ d_4_2_Core->BindImageTexture(unit, texture, level, layered, layer, access, format);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
+{
+ d_4_2_Core->GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
+{
+ d_4_2_Core->GetInternalformativ(target, internalformat, pname, bufSize, params);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
+{
+ d_4_2_Core->DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
+{
+ d_4_2_Core->DrawTransformFeedbackInstanced(mode, id, instancecount);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
+{
+ d_4_2_Core->DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
+{
+ d_4_2_Core->DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
+}
+
+inline void QOpenGLFunctions_4_2_Core::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
+{
+ d_4_2_Core->DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_4_3_compatibility.cpp b/src/gui/opengl/qopenglfunctions_4_3_compatibility.cpp
new file mode 100644
index 0000000000..75bcef1562
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_3_compatibility.cpp
@@ -0,0 +1,415 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_4_3_compatibility.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_4_3_Compatibility
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_4_3_Compatibility class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_4_3_Compatibility::QOpenGLFunctions_4_3_Compatibility()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_4_0_Core(0)
+ , d_4_1_Core(0)
+ , d_4_2_Core(0)
+ , d_4_3_Core(0)
+ , d_1_0_Deprecated(0)
+ , d_1_1_Deprecated(0)
+ , d_1_2_Deprecated(0)
+ , d_1_3_Deprecated(0)
+ , d_1_4_Deprecated(0)
+ , d_2_0_Deprecated(0)
+ , d_3_0_Deprecated(0)
+{
+}
+
+QOpenGLFunctions_4_3_Compatibility::~QOpenGLFunctions_4_3_Compatibility()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_4_0_Core && !d_4_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_0_Core->context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ delete d_4_0_Core;
+ }
+ if (d_4_1_Core && !d_4_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_1_Core->context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ delete d_4_1_Core;
+ }
+ if (d_4_2_Core && !d_4_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_2_Core->context, QOpenGLFunctions_4_2_CoreBackend::versionStatus());
+ delete d_4_2_Core;
+ }
+ if (d_4_3_Core && !d_4_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_3_Core->context, QOpenGLFunctions_4_3_CoreBackend::versionStatus());
+ delete d_4_3_Core;
+ }
+ if (d_1_0_Deprecated && !d_1_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Deprecated->context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ delete d_1_0_Deprecated;
+ }
+ if (d_1_1_Deprecated && !d_1_1_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Deprecated->context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ delete d_1_1_Deprecated;
+ }
+ if (d_1_2_Deprecated && !d_1_2_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Deprecated->context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ delete d_1_2_Deprecated;
+ }
+ if (d_1_3_Deprecated && !d_1_3_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Deprecated->context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ delete d_1_3_Deprecated;
+ }
+ if (d_1_4_Deprecated && !d_1_4_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Deprecated->context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ delete d_1_4_Deprecated;
+ }
+ if (d_2_0_Deprecated && !d_2_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Deprecated->context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ delete d_2_0_Deprecated;
+ }
+ if (d_3_0_Deprecated && !d_3_0_Deprecated->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Deprecated->context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ delete d_3_0_Deprecated;
+ }
+}
+
+bool QOpenGLFunctions_4_3_Compatibility::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_4_3_Compatibility::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus(), d);
+ }
+ d_4_0_Core = static_cast<QOpenGLFunctions_4_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus(), d);
+ }
+ d_4_1_Core = static_cast<QOpenGLFunctions_4_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_2_CoreBackend::versionStatus(), d);
+ }
+ d_4_2_Core = static_cast<QOpenGLFunctions_4_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_3_CoreBackend::versionStatus(), d);
+ }
+ d_4_3_Core = static_cast<QOpenGLFunctions_4_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_0_Deprecated = static_cast<QOpenGLFunctions_1_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_1_Deprecated = static_cast<QOpenGLFunctions_1_1_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_2_Deprecated = static_cast<QOpenGLFunctions_1_2_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_3_Deprecated = static_cast<QOpenGLFunctions_1_3_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus(), d);
+ }
+ d_1_4_Deprecated = static_cast<QOpenGLFunctions_1_4_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_2_0_Deprecated = static_cast<QOpenGLFunctions_2_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_DeprecatedBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus(), d);
+ }
+ d_3_0_Deprecated = static_cast<QOpenGLFunctions_3_0_DeprecatedBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_4_3_Compatibility::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(4, 3))
+ return false;
+
+ if (f.profile() == QSurfaceFormat::CoreProfile)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_4_3_Compatibility::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(4, 3);
+ v.setProfile(QSurfaceFormat::CompatibilityProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_4_3_compatibility.h b/src/gui/opengl/qopenglfunctions_4_3_compatibility.h
new file mode 100644
index 0000000000..124685d0c0
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_3_compatibility.h
@@ -0,0 +1,5845 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_4_3_COMPATIBILITY_H
+#define QOPENGLVERSIONFUNCTIONS_4_3_COMPATIBILITY_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_4_3_Compatibility : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_4_3_Compatibility();
+ ~QOpenGLFunctions_4_3_Compatibility();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 4.0 core functions
+ void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void glEndQueryIndexed(GLenum target, GLuint index);
+ void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
+ void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
+ void glDrawTransformFeedback(GLenum mode, GLuint id);
+ void glResumeTransformFeedback();
+ void glPauseTransformFeedback();
+ GLboolean glIsTransformFeedback(GLuint id);
+ void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
+ void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ void glBindTransformFeedback(GLenum target, GLuint id);
+ void glPatchParameterfv(GLenum pname, const GLfloat *values);
+ void glPatchParameteri(GLenum pname, GLint value);
+ void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
+ void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
+ void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
+ void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void glUniform2d(GLint location, GLdouble x, GLdouble y);
+ void glUniform1d(GLint location, GLdouble x);
+ void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
+ void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
+ void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
+ void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void glBlendEquationi(GLuint buf, GLenum mode);
+ void glMinSampleShading(GLfloat value);
+
+ // OpenGL 4.1 core functions
+ void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
+ void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
+ void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
+ void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
+ void glScissorIndexedv(GLuint index, const GLint *v);
+ void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
+ void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
+ void glViewportIndexedfv(GLuint index, const GLfloat *v);
+ void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
+ void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
+ void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
+ void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glVertexAttribL4dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL3dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL2dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL1dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttribL1d(GLuint index, GLdouble x);
+ void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glValidateProgramPipeline(GLuint pipeline);
+ void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
+ void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
+ void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+ void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
+ void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
+ void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
+ void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
+ void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
+ void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
+ void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
+ void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform1i(GLuint program, GLint location, GLint v0);
+ void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
+ GLboolean glIsProgramPipeline(GLuint pipeline);
+ void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
+ void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
+ void glBindProgramPipeline(GLuint pipeline);
+ GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
+ void glActiveShaderProgram(GLuint pipeline, GLuint program);
+ void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
+ void glProgramParameteri(GLuint program, GLenum pname, GLint value);
+ void glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+ void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+ void glClearDepthf(GLfloat dd);
+ void glDepthRangef(GLfloat n, GLfloat f);
+ void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+ void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+ void glReleaseShaderCompiler();
+
+ // OpenGL 4.2 core functions
+ void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+ void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
+ void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
+ void glMemoryBarrier(GLbitfield barriers);
+ void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
+ void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
+ void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
+ void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
+ void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
+ void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
+ void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
+ void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
+
+ // OpenGL 4.3 core functions
+ void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
+ GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name);
+ GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name);
+ void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
+ void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
+ GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name);
+ void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params);
+ void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
+ void glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
+ void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);
+ void glInvalidateBufferData(GLuint buffer);
+ void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length);
+ void glInvalidateTexImage(GLuint texture, GLint level);
+ void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
+ void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
+ void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glFramebufferParameteri(GLenum target, GLenum pname, GLint param);
+ void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor);
+ void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex);
+ void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+ void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+ void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+ void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+ void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
+ void glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
+ void glDispatchComputeIndirect(GLintptr indirect);
+ void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
+ void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
+ void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
+
+ // OpenGL 1.0 deprecated functions
+ void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
+ void glTranslated(GLdouble x, GLdouble y, GLdouble z);
+ void glScalef(GLfloat x, GLfloat y, GLfloat z);
+ void glScaled(GLdouble x, GLdouble y, GLdouble z);
+ void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void glPushMatrix();
+ void glPopMatrix();
+ void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void glMultMatrixd(const GLdouble *m);
+ void glMultMatrixf(const GLfloat *m);
+ void glMatrixMode(GLenum mode);
+ void glLoadMatrixd(const GLdouble *m);
+ void glLoadMatrixf(const GLfloat *m);
+ void glLoadIdentity();
+ void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean glIsList(GLuint list);
+ void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
+ void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
+ void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
+ void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetPolygonStipple(GLubyte *mask);
+ void glGetPixelMapusv(GLenum map, GLushort *values);
+ void glGetPixelMapuiv(GLenum map, GLuint *values);
+ void glGetPixelMapfv(GLenum map, GLfloat *values);
+ void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
+ void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ void glGetMapiv(GLenum target, GLenum query, GLint *v);
+ void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
+ void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
+ void glGetLightiv(GLenum light, GLenum pname, GLint *params);
+ void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ void glGetClipPlane(GLenum plane, GLdouble *equation);
+ void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
+ void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
+ void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
+ void glPixelTransferi(GLenum pname, GLint param);
+ void glPixelTransferf(GLenum pname, GLfloat param);
+ void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
+ void glAlphaFunc(GLenum func, GLfloat ref);
+ void glEvalPoint2(GLint i, GLint j);
+ void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void glEvalPoint1(GLint i);
+ void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
+ void glEvalCoord2fv(const GLfloat *u);
+ void glEvalCoord2f(GLfloat u, GLfloat v);
+ void glEvalCoord2dv(const GLdouble *u);
+ void glEvalCoord2d(GLdouble u, GLdouble v);
+ void glEvalCoord1fv(const GLfloat *u);
+ void glEvalCoord1f(GLfloat u);
+ void glEvalCoord1dv(const GLdouble *u);
+ void glEvalCoord1d(GLdouble u);
+ void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
+ void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
+ void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void glPushAttrib(GLbitfield mask);
+ void glPopAttrib();
+ void glAccum(GLenum op, GLfloat value);
+ void glIndexMask(GLuint mask);
+ void glClearIndex(GLfloat c);
+ void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glPushName(GLuint name);
+ void glPopName();
+ void glPassThrough(GLfloat token);
+ void glLoadName(GLuint name);
+ void glInitNames();
+ GLint glRenderMode(GLenum mode);
+ void glSelectBuffer(GLsizei size, GLuint *buffer);
+ void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
+ void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
+ void glTexGeni(GLenum coord, GLenum pname, GLint param);
+ void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
+ void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
+ void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
+ void glTexGend(GLenum coord, GLenum pname, GLdouble param);
+ void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
+ void glTexEnvi(GLenum target, GLenum pname, GLint param);
+ void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
+ void glShadeModel(GLenum mode);
+ void glPolygonStipple(const GLubyte *mask);
+ void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
+ void glMateriali(GLenum face, GLenum pname, GLint param);
+ void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
+ void glMaterialf(GLenum face, GLenum pname, GLfloat param);
+ void glLineStipple(GLint factor, GLushort pattern);
+ void glLightModeliv(GLenum pname, const GLint *params);
+ void glLightModeli(GLenum pname, GLint param);
+ void glLightModelfv(GLenum pname, const GLfloat *params);
+ void glLightModelf(GLenum pname, GLfloat param);
+ void glLightiv(GLenum light, GLenum pname, const GLint *params);
+ void glLighti(GLenum light, GLenum pname, GLint param);
+ void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
+ void glLightf(GLenum light, GLenum pname, GLfloat param);
+ void glFogiv(GLenum pname, const GLint *params);
+ void glFogi(GLenum pname, GLint param);
+ void glFogfv(GLenum pname, const GLfloat *params);
+ void glFogf(GLenum pname, GLfloat param);
+ void glColorMaterial(GLenum face, GLenum mode);
+ void glClipPlane(GLenum plane, const GLdouble *equation);
+ void glVertex4sv(const GLshort *v);
+ void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertex4iv(const GLint *v);
+ void glVertex4i(GLint x, GLint y, GLint z, GLint w);
+ void glVertex4fv(const GLfloat *v);
+ void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertex4dv(const GLdouble *v);
+ void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertex3sv(const GLshort *v);
+ void glVertex3s(GLshort x, GLshort y, GLshort z);
+ void glVertex3iv(const GLint *v);
+ void glVertex3i(GLint x, GLint y, GLint z);
+ void glVertex3fv(const GLfloat *v);
+ void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
+ void glVertex3dv(const GLdouble *v);
+ void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
+ void glVertex2sv(const GLshort *v);
+ void glVertex2s(GLshort x, GLshort y);
+ void glVertex2iv(const GLint *v);
+ void glVertex2i(GLint x, GLint y);
+ void glVertex2fv(const GLfloat *v);
+ void glVertex2f(GLfloat x, GLfloat y);
+ void glVertex2dv(const GLdouble *v);
+ void glVertex2d(GLdouble x, GLdouble y);
+ void glTexCoord4sv(const GLshort *v);
+ void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
+ void glTexCoord4iv(const GLint *v);
+ void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
+ void glTexCoord4fv(const GLfloat *v);
+ void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glTexCoord4dv(const GLdouble *v);
+ void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glTexCoord3sv(const GLshort *v);
+ void glTexCoord3s(GLshort s, GLshort t, GLshort r);
+ void glTexCoord3iv(const GLint *v);
+ void glTexCoord3i(GLint s, GLint t, GLint r);
+ void glTexCoord3fv(const GLfloat *v);
+ void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
+ void glTexCoord3dv(const GLdouble *v);
+ void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
+ void glTexCoord2sv(const GLshort *v);
+ void glTexCoord2s(GLshort s, GLshort t);
+ void glTexCoord2iv(const GLint *v);
+ void glTexCoord2i(GLint s, GLint t);
+ void glTexCoord2fv(const GLfloat *v);
+ void glTexCoord2f(GLfloat s, GLfloat t);
+ void glTexCoord2dv(const GLdouble *v);
+ void glTexCoord2d(GLdouble s, GLdouble t);
+ void glTexCoord1sv(const GLshort *v);
+ void glTexCoord1s(GLshort s);
+ void glTexCoord1iv(const GLint *v);
+ void glTexCoord1i(GLint s);
+ void glTexCoord1fv(const GLfloat *v);
+ void glTexCoord1f(GLfloat s);
+ void glTexCoord1dv(const GLdouble *v);
+ void glTexCoord1d(GLdouble s);
+ void glRectsv(const GLshort *v1, const GLshort *v2);
+ void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void glRectiv(const GLint *v1, const GLint *v2);
+ void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
+ void glRectfv(const GLfloat *v1, const GLfloat *v2);
+ void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void glRectdv(const GLdouble *v1, const GLdouble *v2);
+ void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void glRasterPos4sv(const GLshort *v);
+ void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
+ void glRasterPos4iv(const GLint *v);
+ void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
+ void glRasterPos4fv(const GLfloat *v);
+ void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glRasterPos4dv(const GLdouble *v);
+ void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glRasterPos3sv(const GLshort *v);
+ void glRasterPos3s(GLshort x, GLshort y, GLshort z);
+ void glRasterPos3iv(const GLint *v);
+ void glRasterPos3i(GLint x, GLint y, GLint z);
+ void glRasterPos3fv(const GLfloat *v);
+ void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glRasterPos3dv(const GLdouble *v);
+ void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glRasterPos2sv(const GLshort *v);
+ void glRasterPos2s(GLshort x, GLshort y);
+ void glRasterPos2iv(const GLint *v);
+ void glRasterPos2i(GLint x, GLint y);
+ void glRasterPos2fv(const GLfloat *v);
+ void glRasterPos2f(GLfloat x, GLfloat y);
+ void glRasterPos2dv(const GLdouble *v);
+ void glRasterPos2d(GLdouble x, GLdouble y);
+ void glNormal3sv(const GLshort *v);
+ void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
+ void glNormal3iv(const GLint *v);
+ void glNormal3i(GLint nx, GLint ny, GLint nz);
+ void glNormal3fv(const GLfloat *v);
+ void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ void glNormal3dv(const GLdouble *v);
+ void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
+ void glNormal3bv(const GLbyte *v);
+ void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
+ void glIndexsv(const GLshort *c);
+ void glIndexs(GLshort c);
+ void glIndexiv(const GLint *c);
+ void glIndexi(GLint c);
+ void glIndexfv(const GLfloat *c);
+ void glIndexf(GLfloat c);
+ void glIndexdv(const GLdouble *c);
+ void glIndexd(GLdouble c);
+ void glEnd();
+ void glEdgeFlagv(const GLboolean *flag);
+ void glEdgeFlag(GLboolean flag);
+ void glColor4usv(const GLushort *v);
+ void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void glColor4uiv(const GLuint *v);
+ void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void glColor4ubv(const GLubyte *v);
+ void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void glColor4sv(const GLshort *v);
+ void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void glColor4iv(const GLint *v);
+ void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
+ void glColor4fv(const GLfloat *v);
+ void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glColor4dv(const GLdouble *v);
+ void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void glColor4bv(const GLbyte *v);
+ void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void glColor3usv(const GLushort *v);
+ void glColor3us(GLushort red, GLushort green, GLushort blue);
+ void glColor3uiv(const GLuint *v);
+ void glColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glColor3ubv(const GLubyte *v);
+ void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glColor3sv(const GLshort *v);
+ void glColor3s(GLshort red, GLshort green, GLshort blue);
+ void glColor3iv(const GLint *v);
+ void glColor3i(GLint red, GLint green, GLint blue);
+ void glColor3fv(const GLfloat *v);
+ void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glColor3dv(const GLdouble *v);
+ void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glColor3bv(const GLbyte *v);
+ void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void glBegin(GLenum mode);
+ void glListBase(GLuint base);
+ GLuint glGenLists(GLsizei range);
+ void glDeleteLists(GLuint list, GLsizei range);
+ void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
+ void glCallList(GLuint list);
+ void glEndList();
+ void glNewList(GLuint list, GLenum mode);
+
+ // OpenGL 1.1 deprecated functions
+ void glPushClientAttrib(GLbitfield mask);
+ void glPopClientAttrib();
+ void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEnableClientState(GLenum array);
+ void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
+ void glDisableClientState(GLenum array);
+ void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glArrayElement(GLint i);
+
+ // OpenGL 1.2 deprecated functions
+ void glResetMinmax(GLenum target);
+ void glResetHistogram(GLenum target);
+ void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
+ void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
+ void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
+ void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+ // OpenGL 1.3 deprecated functions
+ void glMultTransposeMatrixd(const GLdouble *m);
+ void glMultTransposeMatrixf(const GLfloat *m);
+ void glLoadTransposeMatrixd(const GLdouble *m);
+ void glLoadTransposeMatrixf(const GLfloat *m);
+ void glMultiTexCoord4sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void glMultiTexCoord4iv(GLenum target, const GLint *v);
+ void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void glMultiTexCoord3sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
+ void glMultiTexCoord3iv(GLenum target, const GLint *v);
+ void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
+ void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void glMultiTexCoord2sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
+ void glMultiTexCoord2iv(GLenum target, const GLint *v);
+ void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
+ void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
+ void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
+ void glMultiTexCoord1sv(GLenum target, const GLshort *v);
+ void glMultiTexCoord1s(GLenum target, GLshort s);
+ void glMultiTexCoord1iv(GLenum target, const GLint *v);
+ void glMultiTexCoord1i(GLenum target, GLint s);
+ void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
+ void glMultiTexCoord1f(GLenum target, GLfloat s);
+ void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
+ void glMultiTexCoord1d(GLenum target, GLdouble s);
+ void glClientActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 deprecated functions
+ void glWindowPos3sv(const GLshort *v);
+ void glWindowPos3s(GLshort x, GLshort y, GLshort z);
+ void glWindowPos3iv(const GLint *v);
+ void glWindowPos3i(GLint x, GLint y, GLint z);
+ void glWindowPos3fv(const GLfloat *v);
+ void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
+ void glWindowPos3dv(const GLdouble *v);
+ void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
+ void glWindowPos2sv(const GLshort *v);
+ void glWindowPos2s(GLshort x, GLshort y);
+ void glWindowPos2iv(const GLint *v);
+ void glWindowPos2i(GLint x, GLint y);
+ void glWindowPos2fv(const GLfloat *v);
+ void glWindowPos2f(GLfloat x, GLfloat y);
+ void glWindowPos2dv(const GLdouble *v);
+ void glWindowPos2d(GLdouble x, GLdouble y);
+ void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glSecondaryColor3usv(const GLushort *v);
+ void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
+ void glSecondaryColor3uiv(const GLuint *v);
+ void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
+ void glSecondaryColor3ubv(const GLubyte *v);
+ void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
+ void glSecondaryColor3sv(const GLshort *v);
+ void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
+ void glSecondaryColor3iv(const GLint *v);
+ void glSecondaryColor3i(GLint red, GLint green, GLint blue);
+ void glSecondaryColor3fv(const GLfloat *v);
+ void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
+ void glSecondaryColor3dv(const GLdouble *v);
+ void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
+ void glSecondaryColor3bv(const GLbyte *v);
+ void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
+ void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glFogCoorddv(const GLdouble *coord);
+ void glFogCoordd(GLdouble coord);
+ void glFogCoordfv(const GLfloat *coord);
+ void glFogCoordf(GLfloat coord);
+
+ // OpenGL 1.5 deprecated functions
+
+ // OpenGL 2.0 deprecated functions
+ void glVertexAttrib4usv(GLuint index, const GLushort *v);
+ void glVertexAttrib4uiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4sv(GLuint index, const GLshort *v);
+ void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void glVertexAttrib4iv(GLuint index, const GLint *v);
+ void glVertexAttrib4fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttrib4bv(GLuint index, const GLbyte *v);
+ void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
+ void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
+ void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
+ void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
+ void glVertexAttrib4Niv(GLuint index, const GLint *v);
+ void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
+ void glVertexAttrib3sv(GLuint index, const GLshort *v);
+ void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
+ void glVertexAttrib3fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttrib2sv(GLuint index, const GLshort *v);
+ void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
+ void glVertexAttrib2fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ void glVertexAttrib2dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttrib1sv(GLuint index, const GLshort *v);
+ void glVertexAttrib1s(GLuint index, GLshort x);
+ void glVertexAttrib1fv(GLuint index, const GLfloat *v);
+ void glVertexAttrib1f(GLuint index, GLfloat x);
+ void glVertexAttrib1dv(GLuint index, const GLdouble *v);
+ void glVertexAttrib1d(GLuint index, GLdouble x);
+
+ // OpenGL 2.1 deprecated functions
+
+ // OpenGL 3.0 deprecated functions
+ void glVertexAttribI4usv(GLuint index, const GLushort *v);
+ void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
+ void glVertexAttribI4sv(GLuint index, const GLshort *v);
+ void glVertexAttribI4bv(GLuint index, const GLbyte *v);
+ void glVertexAttribI4uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI3uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI2uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI1uiv(GLuint index, const GLuint *v);
+ void glVertexAttribI4iv(GLuint index, const GLint *v);
+ void glVertexAttribI3iv(GLuint index, const GLint *v);
+ void glVertexAttribI2iv(GLuint index, const GLint *v);
+ void glVertexAttribI1iv(GLuint index, const GLint *v);
+ void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
+ void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
+ void glVertexAttribI1ui(GLuint index, GLuint x);
+ void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
+ void glVertexAttribI2i(GLuint index, GLint x, GLint y);
+ void glVertexAttribI1i(GLuint index, GLint x);
+
+ // OpenGL 3.1 deprecated functions
+
+ // OpenGL 3.2 deprecated functions
+
+ // OpenGL 3.3 deprecated functions
+
+ // OpenGL 4.0 deprecated functions
+
+ // OpenGL 4.1 deprecated functions
+
+ // OpenGL 4.2 deprecated functions
+
+ // OpenGL 4.3 deprecated functions
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
+ QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
+ QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
+ QOpenGLFunctions_4_3_CoreBackend* d_4_3_Core;
+ QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
+ QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
+ QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
+ QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
+ QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
+ QOpenGLFunctions_2_0_DeprecatedBackend* d_2_0_Deprecated;
+ QOpenGLFunctions_3_0_DeprecatedBackend* d_3_0_Deprecated;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_3_Compatibility::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_4_3_Compatibility::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_4_3_Compatibility::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_4_3_Compatibility::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_4_3_Compatibility::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Compatibility::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Compatibility::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_4_3_Compatibility::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_4_3_Compatibility::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_3_Compatibility::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_4_3_Compatibility::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Compatibility::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_4_3_Compatibility::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_4_3_Compatibility::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_4_3_Compatibility::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 4.0 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
+{
+ d_4_0_Core->GetQueryIndexediv(target, index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEndQueryIndexed(GLenum target, GLuint index)
+{
+ d_4_0_Core->EndQueryIndexed(target, index);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
+{
+ d_4_0_Core->BeginQueryIndexed(target, index, id);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
+{
+ d_4_0_Core->DrawTransformFeedbackStream(mode, id, stream);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ d_4_0_Core->DrawTransformFeedback(mode, id);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glResumeTransformFeedback()
+{
+ d_4_0_Core->ResumeTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPauseTransformFeedback()
+{
+ d_4_0_Core->PauseTransformFeedback();
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsTransformFeedback(GLuint id)
+{
+ return d_4_0_Core->IsTransformFeedback(id);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ d_4_0_Core->GenTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ d_4_0_Core->DeleteTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindTransformFeedback(GLenum target, GLuint id)
+{
+ d_4_0_Core->BindTransformFeedback(target, id);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPatchParameterfv(GLenum pname, const GLfloat *values)
+{
+ d_4_0_Core->PatchParameterfv(pname, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPatchParameteri(GLenum pname, GLint value)
+{
+ d_4_0_Core->PatchParameteri(pname, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetProgramStageiv(program, shadertype, pname, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
+{
+ d_4_0_Core->GetUniformSubroutineuiv(shadertype, location, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
+{
+ d_4_0_Core->UniformSubroutinesuiv(shadertype, count, indices);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Compatibility::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineIndex(program, shadertype, name);
+}
+
+inline GLint QOpenGLFunctions_4_3_Compatibility::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineUniformLocation(program, shadertype, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
+{
+ d_4_0_Core->GetUniformdv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform4dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform3dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform2dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform1dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_0_Core->Uniform4d(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_0_Core->Uniform3d(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform2d(GLint location, GLdouble x, GLdouble y)
+{
+ d_4_0_Core->Uniform2d(location, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUniform1d(GLint location, GLdouble x)
+{
+ d_4_0_Core->Uniform1d(location, x);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawElementsIndirect(mode, type, indirect);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawArraysIndirect(mode, indirect);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ d_4_0_Core->BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
+{
+ d_4_0_Core->BlendFunci(buf, src, dst);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
+{
+ d_4_0_Core->BlendEquationSeparatei(buf, modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBlendEquationi(GLuint buf, GLenum mode)
+{
+ d_4_0_Core->BlendEquationi(buf, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMinSampleShading(GLfloat value)
+{
+ d_4_0_Core->MinSampleShading(value);
+}
+
+
+// OpenGL 4.1 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
+{
+ d_4_1_Core->GetDoublei_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
+{
+ d_4_1_Core->GetFloati_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
+{
+ d_4_1_Core->DepthRangeIndexed(index, n, f);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
+{
+ d_4_1_Core->DepthRangeArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glScissorIndexedv(GLuint index, const GLint *v)
+{
+ d_4_1_Core->ScissorIndexedv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
+{
+ d_4_1_Core->ScissorIndexed(index, left, bottom, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
+{
+ d_4_1_Core->ScissorArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glViewportIndexedfv(GLuint index, const GLfloat *v)
+{
+ d_4_1_Core->ViewportIndexedfv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
+{
+ d_4_1_Core->ViewportIndexedf(index, x, y, w, h);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
+{
+ d_4_1_Core->ViewportArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_4_1_Core->GetVertexAttribLdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_4_1_Core->VertexAttribLPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribL4dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribL3dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribL2dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribL1dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_1_Core->VertexAttribL4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_1_Core->VertexAttribL3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_4_1_Core->VertexAttribL2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribL1d(GLuint index, GLdouble x)
+{
+ d_4_1_Core->VertexAttribL1d(index, x);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_4_1_Core->GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glValidateProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->ValidateProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform4uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_4_1_Core->ProgramUniform4ui(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform4dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
+{
+ d_4_1_Core->ProgramUniform4d(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform4fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_4_1_Core->ProgramUniform4f(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform4iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_4_1_Core->ProgramUniform4i(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform3uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_4_1_Core->ProgramUniform3ui(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform3dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
+{
+ d_4_1_Core->ProgramUniform3d(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform3fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_4_1_Core->ProgramUniform3f(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform3iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_4_1_Core->ProgramUniform3i(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform2uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
+{
+ d_4_1_Core->ProgramUniform2ui(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform2dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
+{
+ d_4_1_Core->ProgramUniform2d(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform2fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
+{
+ d_4_1_Core->ProgramUniform2f(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform2iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
+{
+ d_4_1_Core->ProgramUniform2i(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform1uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
+{
+ d_4_1_Core->ProgramUniform1ui(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform1dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
+{
+ d_4_1_Core->ProgramUniform1d(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform1fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
+{
+ d_4_1_Core->ProgramUniform1f(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform1iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramUniform1i(GLuint program, GLint location, GLint v0)
+{
+ d_4_1_Core->ProgramUniform1i(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
+{
+ d_4_1_Core->GetProgramPipelineiv(pipeline, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsProgramPipeline(GLuint pipeline)
+{
+ return d_4_1_Core->IsProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
+{
+ d_4_1_Core->GenProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
+{
+ d_4_1_Core->DeleteProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->BindProgramPipeline(pipeline);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Compatibility::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings)
+{
+ return d_4_1_Core->CreateShaderProgramv(type, count, strings);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glActiveShaderProgram(GLuint pipeline, GLuint program)
+{
+ d_4_1_Core->ActiveShaderProgram(pipeline, program);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
+{
+ d_4_1_Core->UseProgramStages(pipeline, stages, program);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ d_4_1_Core->ProgramParameteri(program, pname, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ProgramBinary(program, binaryFormat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ d_4_1_Core->GetProgramBinary(program, bufSize, length, binaryFormat, binary);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearDepthf(GLfloat dd)
+{
+ d_4_1_Core->ClearDepthf(dd);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDepthRangef(GLfloat n, GLfloat f)
+{
+ d_4_1_Core->DepthRangef(n, f);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ d_4_1_Core->GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ShaderBinary(count, shaders, binaryformat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glReleaseShaderCompiler()
+{
+ d_4_1_Core->ReleaseShaderCompiler();
+}
+
+
+// OpenGL 4.2 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
+{
+ d_4_2_Core->TexStorage3D(target, levels, internalformat, width, height, depth);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_4_2_Core->TexStorage2D(target, levels, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
+{
+ d_4_2_Core->TexStorage1D(target, levels, internalformat, width);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMemoryBarrier(GLbitfield barriers)
+{
+ d_4_2_Core->MemoryBarrier(barriers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
+{
+ d_4_2_Core->BindImageTexture(unit, texture, level, layered, layer, access, format);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
+{
+ d_4_2_Core->GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
+{
+ d_4_2_Core->GetInternalformativ(target, internalformat, pname, bufSize, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
+{
+ d_4_2_Core->DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
+{
+ d_4_2_Core->DrawTransformFeedbackInstanced(mode, id, instancecount);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
+{
+ d_4_2_Core->DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
+{
+ d_4_2_Core->DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
+{
+ d_4_2_Core->DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
+}
+
+
+// OpenGL 4.3 core functions
+inline void QOpenGLFunctions_4_3_Compatibility::glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_4_3_Core->TexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_4_3_Core->TexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_4_3_Core->TexBufferRange(target, internalformat, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding)
+{
+ d_4_3_Core->ShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);
+}
+
+inline GLint QOpenGLFunctions_4_3_Compatibility::glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)
+{
+ return d_4_3_Core->GetProgramResourceLocationIndex(program, programInterface, name);
+}
+
+inline GLint QOpenGLFunctions_4_3_Compatibility::glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)
+{
+ return d_4_3_Core->GetProgramResourceLocation(program, programInterface, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params)
+{
+ d_4_3_Core->GetProgramResourceiv(program, programInterface, index, propCount, props, bufSize, length, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)
+{
+ d_4_3_Core->GetProgramResourceName(program, programInterface, index, bufSize, length, name);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Compatibility::glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)
+{
+ return d_4_3_Core->GetProgramResourceIndex(program, programInterface, name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params)
+{
+ d_4_3_Core->GetProgramInterfaceiv(program, programInterface, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride)
+{
+ d_4_3_Core->MultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride)
+{
+ d_4_3_Core->MultiDrawArraysIndirect(mode, indirect, drawcount, stride);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_4_3_Core->InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments)
+{
+ d_4_3_Core->InvalidateFramebuffer(target, numAttachments, attachments);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glInvalidateBufferData(GLuint buffer)
+{
+ d_4_3_Core->InvalidateBufferData(buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length)
+{
+ d_4_3_Core->InvalidateBufferSubData(buffer, offset, length);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glInvalidateTexImage(GLuint texture, GLint level)
+{
+ d_4_3_Core->InvalidateTexImage(texture, level);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth)
+{
+ d_4_3_Core->InvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params)
+{
+ d_4_3_Core->GetInternalformati64v(target, internalformat, pname, bufSize, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_4_3_Core->GetFramebufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFramebufferParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_4_3_Core->FramebufferParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)
+{
+ d_4_3_Core->VertexBindingDivisor(bindingindex, divisor);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)
+{
+ d_4_3_Core->VertexAttribBinding(attribindex, bindingindex);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
+{
+ d_4_3_Core->VertexAttribLFormat(attribindex, size, type, relativeoffset);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
+{
+ d_4_3_Core->VertexAttribIFormat(attribindex, size, type, relativeoffset);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
+{
+ d_4_3_Core->VertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)
+{
+ d_4_3_Core->BindVertexBuffer(bindingindex, buffer, offset, stride);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers)
+{
+ d_4_3_Core->TextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth)
+{
+ d_4_3_Core->CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDispatchComputeIndirect(GLintptr indirect)
+{
+ d_4_3_Core->DispatchComputeIndirect(indirect);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
+{
+ d_4_3_Core->DispatchCompute(num_groups_x, num_groups_y, num_groups_z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)
+{
+ d_4_3_Core->ClearBufferSubData(target, internalformat, offset, size, format, type, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data)
+{
+ d_4_3_Core->ClearBufferData(target, internalformat, format, type, data);
+}
+
+
+// OpenGL 1.0 deprecated functions
+inline void QOpenGLFunctions_4_3_Compatibility::glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Translatef(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTranslated(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Translated(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Scalef(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glScaled(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Scaled(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Rotatef(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Rotated(angle, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPushMatrix()
+{
+ d_1_0_Deprecated->PushMatrix();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPopMatrix()
+{
+ d_1_0_Deprecated->PopMatrix();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Ortho(left, right, bottom, top, zNear, zFar);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->MultMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->MultMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMatrixMode(GLenum mode)
+{
+ d_1_0_Deprecated->MatrixMode(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLoadMatrixd(const GLdouble *m)
+{
+ d_1_0_Deprecated->LoadMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLoadMatrixf(const GLfloat *m)
+{
+ d_1_0_Deprecated->LoadMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLoadIdentity()
+{
+ d_1_0_Deprecated->LoadIdentity();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+ d_1_0_Deprecated->Frustum(left, right, bottom, top, zNear, zFar);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glIsList(GLuint list)
+{
+ return d_1_0_Deprecated->IsList(list);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexGeniv(GLenum coord, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params)
+{
+ d_1_0_Deprecated->GetTexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetTexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetTexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetPolygonStipple(GLubyte *mask)
+{
+ d_1_0_Deprecated->GetPolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetPixelMapusv(GLenum map, GLushort *values)
+{
+ d_1_0_Deprecated->GetPixelMapusv(map, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetPixelMapuiv(GLenum map, GLuint *values)
+{
+ d_1_0_Deprecated->GetPixelMapuiv(map, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetPixelMapfv(GLenum map, GLfloat *values)
+{
+ d_1_0_Deprecated->GetPixelMapfv(map, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMaterialiv(GLenum face, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetMaterialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetMaterialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMapiv(GLenum target, GLenum query, GLint *v)
+{
+ d_1_0_Deprecated->GetMapiv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMapfv(GLenum target, GLenum query, GLfloat *v)
+{
+ d_1_0_Deprecated->GetMapfv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMapdv(GLenum target, GLenum query, GLdouble *v)
+{
+ d_1_0_Deprecated->GetMapdv(target, query, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetLightiv(GLenum light, GLenum pname, GLint *params)
+{
+ d_1_0_Deprecated->GetLightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ d_1_0_Deprecated->GetLightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetClipPlane(GLenum plane, GLdouble *equation)
+{
+ d_1_0_Deprecated->GetClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Deprecated->DrawPixels(width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+ d_1_0_Deprecated->CopyPixels(x, y, width, height, type);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values)
+{
+ d_1_0_Deprecated->PixelMapusv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values)
+{
+ d_1_0_Deprecated->PixelMapuiv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values)
+{
+ d_1_0_Deprecated->PixelMapfv(map, mapsize, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPixelTransferi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->PixelTransferi(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPixelTransferf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->PixelTransferf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPixelZoom(GLfloat xfactor, GLfloat yfactor)
+{
+ d_1_0_Deprecated->PixelZoom(xfactor, yfactor);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glAlphaFunc(GLenum func, GLfloat ref)
+{
+ d_1_0_Deprecated->AlphaFunc(func, ref);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalPoint2(GLint i, GLint j)
+{
+ d_1_0_Deprecated->EvalPoint2(i, j);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+ d_1_0_Deprecated->EvalMesh2(mode, i1, i2, j1, j2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalPoint1(GLint i)
+{
+ d_1_0_Deprecated->EvalPoint1(i);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalMesh1(GLenum mode, GLint i1, GLint i2)
+{
+ d_1_0_Deprecated->EvalMesh1(mode, i1, i2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalCoord2fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord2fv(u);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalCoord2f(GLfloat u, GLfloat v)
+{
+ d_1_0_Deprecated->EvalCoord2f(u, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalCoord2dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord2dv(u);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalCoord2d(GLdouble u, GLdouble v)
+{
+ d_1_0_Deprecated->EvalCoord2d(u, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalCoord1fv(const GLfloat *u)
+{
+ d_1_0_Deprecated->EvalCoord1fv(u);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalCoord1f(GLfloat u)
+{
+ d_1_0_Deprecated->EvalCoord1f(u);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalCoord1dv(const GLdouble *u)
+{
+ d_1_0_Deprecated->EvalCoord1dv(u);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEvalCoord1d(GLdouble u)
+{
+ d_1_0_Deprecated->EvalCoord1d(u);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+ d_1_0_Deprecated->MapGrid2f(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+ d_1_0_Deprecated->MapGrid2d(un, u1, u2, vn, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMapGrid1f(GLint un, GLfloat u1, GLfloat u2)
+{
+ d_1_0_Deprecated->MapGrid1f(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMapGrid1d(GLint un, GLdouble u1, GLdouble u2)
+{
+ d_1_0_Deprecated->MapGrid1d(un, u1, u2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points)
+{
+ d_1_0_Deprecated->Map1f(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points)
+{
+ d_1_0_Deprecated->Map1d(target, u1, u2, stride, order, points);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPushAttrib(GLbitfield mask)
+{
+ d_1_0_Deprecated->PushAttrib(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPopAttrib()
+{
+ d_1_0_Deprecated->PopAttrib();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glAccum(GLenum op, GLfloat value)
+{
+ d_1_0_Deprecated->Accum(op, value);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexMask(GLuint mask)
+{
+ d_1_0_Deprecated->IndexMask(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearIndex(GLfloat c)
+{
+ d_1_0_Deprecated->ClearIndex(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->ClearAccum(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPushName(GLuint name)
+{
+ d_1_0_Deprecated->PushName(name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPopName()
+{
+ d_1_0_Deprecated->PopName();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPassThrough(GLfloat token)
+{
+ d_1_0_Deprecated->PassThrough(token);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLoadName(GLuint name)
+{
+ d_1_0_Deprecated->LoadName(name);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glInitNames()
+{
+ d_1_0_Deprecated->InitNames();
+}
+
+inline GLint QOpenGLFunctions_4_3_Compatibility::glRenderMode(GLenum mode)
+{
+ return d_1_0_Deprecated->RenderMode(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSelectBuffer(GLsizei size, GLuint *buffer)
+{
+ d_1_0_Deprecated->SelectBuffer(size, buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer)
+{
+ d_1_0_Deprecated->FeedbackBuffer(size, type, buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexGeniv(GLenum coord, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexGeniv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexGeni(GLenum coord, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexGeni(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexGenfv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexGenf(GLenum coord, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexGenf(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexGendv(GLenum coord, GLenum pname, const GLdouble *params)
+{
+ d_1_0_Deprecated->TexGendv(coord, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexGend(GLenum coord, GLenum pname, GLdouble param)
+{
+ d_1_0_Deprecated->TexGend(coord, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->TexEnviv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->TexEnvi(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->TexEnvfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->TexEnvf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glShadeModel(GLenum mode)
+{
+ d_1_0_Deprecated->ShadeModel(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPolygonStipple(const GLubyte *mask)
+{
+ d_1_0_Deprecated->PolygonStipple(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMaterialiv(GLenum face, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Materialiv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMateriali(GLenum face, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Materiali(face, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Materialfv(face, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Materialf(face, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLineStipple(GLint factor, GLushort pattern)
+{
+ d_1_0_Deprecated->LineStipple(factor, pattern);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLightModeliv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->LightModeliv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLightModeli(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->LightModeli(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->LightModelfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLightModelf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->LightModelf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLightiv(GLenum light, GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Lightiv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLighti(GLenum light, GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Lighti(light, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Lightfv(light, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Lightf(light, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogiv(GLenum pname, const GLint *params)
+{
+ d_1_0_Deprecated->Fogiv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogi(GLenum pname, GLint param)
+{
+ d_1_0_Deprecated->Fogi(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogfv(GLenum pname, const GLfloat *params)
+{
+ d_1_0_Deprecated->Fogfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogf(GLenum pname, GLfloat param)
+{
+ d_1_0_Deprecated->Fogf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorMaterial(GLenum face, GLenum mode)
+{
+ d_1_0_Deprecated->ColorMaterial(face, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClipPlane(GLenum plane, const GLdouble *equation)
+{
+ d_1_0_Deprecated->ClipPlane(plane, equation);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex4sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->Vertex4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex4iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->Vertex4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex4fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->Vertex4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex4dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->Vertex4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex3sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->Vertex3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex3iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->Vertex3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex3fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->Vertex3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex3dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->Vertex3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Vertex2sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->Vertex2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex2iv(const GLint *v)
+{
+ d_1_0_Deprecated->Vertex2iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->Vertex2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Vertex2fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->Vertex2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Vertex2dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertex2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->Vertex2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord4sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_0_Deprecated->TexCoord4s(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord4iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord4iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord4i(GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_0_Deprecated->TexCoord4i(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord4fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_0_Deprecated->TexCoord4f(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord4dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_0_Deprecated->TexCoord4d(s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord3sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord3s(GLshort s, GLshort t, GLshort r)
+{
+ d_1_0_Deprecated->TexCoord3s(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord3iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord3iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord3i(GLint s, GLint t, GLint r)
+{
+ d_1_0_Deprecated->TexCoord3i(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord3fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord3f(GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_0_Deprecated->TexCoord3f(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord3dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord3d(GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_0_Deprecated->TexCoord3d(s, t, r);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord2sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord2s(GLshort s, GLshort t)
+{
+ d_1_0_Deprecated->TexCoord2s(s, t);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord2iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord2iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord2i(GLint s, GLint t)
+{
+ d_1_0_Deprecated->TexCoord2i(s, t);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord2fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord2f(GLfloat s, GLfloat t)
+{
+ d_1_0_Deprecated->TexCoord2f(s, t);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord2dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord2d(GLdouble s, GLdouble t)
+{
+ d_1_0_Deprecated->TexCoord2d(s, t);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord1sv(const GLshort *v)
+{
+ d_1_0_Deprecated->TexCoord1sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord1s(GLshort s)
+{
+ d_1_0_Deprecated->TexCoord1s(s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord1iv(const GLint *v)
+{
+ d_1_0_Deprecated->TexCoord1iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord1i(GLint s)
+{
+ d_1_0_Deprecated->TexCoord1i(s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord1fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->TexCoord1fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord1f(GLfloat s)
+{
+ d_1_0_Deprecated->TexCoord1f(s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord1dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->TexCoord1dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoord1d(GLdouble s)
+{
+ d_1_0_Deprecated->TexCoord1d(s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRectsv(const GLshort *v1, const GLshort *v2)
+{
+ d_1_0_Deprecated->Rectsv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+ d_1_0_Deprecated->Rects(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRectiv(const GLint *v1, const GLint *v2)
+{
+ d_1_0_Deprecated->Rectiv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRecti(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+ d_1_0_Deprecated->Recti(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRectfv(const GLfloat *v1, const GLfloat *v2)
+{
+ d_1_0_Deprecated->Rectfv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ d_1_0_Deprecated->Rectf(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRectdv(const GLdouble *v1, const GLdouble *v2)
+{
+ d_1_0_Deprecated->Rectdv(v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+ d_1_0_Deprecated->Rectd(x1, y1, x2, y2);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos4sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_1_0_Deprecated->RasterPos4s(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos4iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos4iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos4i(GLint x, GLint y, GLint z, GLint w)
+{
+ d_1_0_Deprecated->RasterPos4i(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos4fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_1_0_Deprecated->RasterPos4f(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos4dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_1_0_Deprecated->RasterPos4d(x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos3sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_0_Deprecated->RasterPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos3iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos3iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_0_Deprecated->RasterPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos3fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_0_Deprecated->RasterPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos3dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_0_Deprecated->RasterPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos2sv(const GLshort *v)
+{
+ d_1_0_Deprecated->RasterPos2sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos2s(GLshort x, GLshort y)
+{
+ d_1_0_Deprecated->RasterPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos2iv(const GLint *v)
+{
+ d_1_0_Deprecated->RasterPos2iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos2i(GLint x, GLint y)
+{
+ d_1_0_Deprecated->RasterPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos2fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->RasterPos2fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos2f(GLfloat x, GLfloat y)
+{
+ d_1_0_Deprecated->RasterPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos2dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->RasterPos2dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glRasterPos2d(GLdouble x, GLdouble y)
+{
+ d_1_0_Deprecated->RasterPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Normal3sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3s(GLshort nx, GLshort ny, GLshort nz)
+{
+ d_1_0_Deprecated->Normal3s(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Normal3iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3i(GLint nx, GLint ny, GLint nz)
+{
+ d_1_0_Deprecated->Normal3i(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Normal3fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ d_1_0_Deprecated->Normal3f(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Normal3dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+ d_1_0_Deprecated->Normal3d(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Normal3bv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+ d_1_0_Deprecated->Normal3b(nx, ny, nz);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexsv(const GLshort *c)
+{
+ d_1_0_Deprecated->Indexsv(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexs(GLshort c)
+{
+ d_1_0_Deprecated->Indexs(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexiv(const GLint *c)
+{
+ d_1_0_Deprecated->Indexiv(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexi(GLint c)
+{
+ d_1_0_Deprecated->Indexi(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexfv(const GLfloat *c)
+{
+ d_1_0_Deprecated->Indexfv(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexf(GLfloat c)
+{
+ d_1_0_Deprecated->Indexf(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexdv(const GLdouble *c)
+{
+ d_1_0_Deprecated->Indexdv(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexd(GLdouble c)
+{
+ d_1_0_Deprecated->Indexd(c);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEnd()
+{
+ d_1_0_Deprecated->End();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEdgeFlagv(const GLboolean *flag)
+{
+ d_1_0_Deprecated->EdgeFlagv(flag);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEdgeFlag(GLboolean flag)
+{
+ d_1_0_Deprecated->EdgeFlag(flag);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color4usv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+ d_1_0_Deprecated->Color4us(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color4uiv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+ d_1_0_Deprecated->Color4ui(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color4ubv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ d_1_0_Deprecated->Color4ub(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color4sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+ d_1_0_Deprecated->Color4s(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color4iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4i(GLint red, GLint green, GLint blue, GLint alpha)
+{
+ d_1_0_Deprecated->Color4i(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color4fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Deprecated->Color4f(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color4dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+ d_1_0_Deprecated->Color4d(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color4bv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+ d_1_0_Deprecated->Color4b(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3usv(const GLushort *v)
+{
+ d_1_0_Deprecated->Color3usv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_0_Deprecated->Color3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3uiv(const GLuint *v)
+{
+ d_1_0_Deprecated->Color3uiv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_0_Deprecated->Color3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3ubv(const GLubyte *v)
+{
+ d_1_0_Deprecated->Color3ubv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_0_Deprecated->Color3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3sv(const GLshort *v)
+{
+ d_1_0_Deprecated->Color3sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_0_Deprecated->Color3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3iv(const GLint *v)
+{
+ d_1_0_Deprecated->Color3iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_0_Deprecated->Color3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3fv(const GLfloat *v)
+{
+ d_1_0_Deprecated->Color3fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_0_Deprecated->Color3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3dv(const GLdouble *v)
+{
+ d_1_0_Deprecated->Color3dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_0_Deprecated->Color3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3bv(const GLbyte *v)
+{
+ d_1_0_Deprecated->Color3bv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_0_Deprecated->Color3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap)
+{
+ d_1_0_Deprecated->Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glBegin(GLenum mode)
+{
+ d_1_0_Deprecated->Begin(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glListBase(GLuint base)
+{
+ d_1_0_Deprecated->ListBase(base);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Compatibility::glGenLists(GLsizei range)
+{
+ return d_1_0_Deprecated->GenLists(range);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDeleteLists(GLuint list, GLsizei range)
+{
+ d_1_0_Deprecated->DeleteLists(list, range);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCallLists(GLsizei n, GLenum type, const GLvoid *lists)
+{
+ d_1_0_Deprecated->CallLists(n, type, lists);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCallList(GLuint list)
+{
+ d_1_0_Deprecated->CallList(list);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEndList()
+{
+ d_1_0_Deprecated->EndList();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNewList(GLuint list, GLenum mode)
+{
+ d_1_0_Deprecated->NewList(list, mode);
+}
+
+
+// OpenGL 1.1 deprecated functions
+inline void QOpenGLFunctions_4_3_Compatibility::glPushClientAttrib(GLbitfield mask)
+{
+ d_1_1_Deprecated->PushClientAttrib(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPopClientAttrib()
+{
+ d_1_1_Deprecated->PopClientAttrib();
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
+{
+ d_1_1_Deprecated->PrioritizeTextures(n, textures, priorities);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Compatibility::glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
+{
+ return d_1_1_Deprecated->AreTexturesResident(n, textures, residences);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->VertexPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->TexCoordPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->NormalPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->InterleavedArrays(format, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->IndexPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEnableClientState(GLenum array)
+{
+ d_1_1_Deprecated->EnableClientState(array);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->EdgeFlagPointer(stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glDisableClientState(GLenum array)
+{
+ d_1_1_Deprecated->DisableClientState(array);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_1_Deprecated->ColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glArrayElement(GLint i)
+{
+ d_1_1_Deprecated->ArrayElement(i);
+}
+
+
+// OpenGL 1.2 deprecated functions
+inline void QOpenGLFunctions_4_3_Compatibility::glResetMinmax(GLenum target)
+{
+ d_1_2_Deprecated->ResetMinmax(target);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glResetHistogram(GLenum target)
+{
+ d_1_2_Deprecated->ResetHistogram(target);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMinmax(GLenum target, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Minmax(target, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+ d_1_2_Deprecated->Histogram(target, width, internalformat, sink);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetMinmaxParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetMinmax(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetHistogramParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetHistogramParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
+{
+ d_1_2_Deprecated->GetHistogram(target, reset, format, type, values);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
+{
+ d_1_2_Deprecated->SeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
+{
+ d_1_2_Deprecated->GetSeparableFilter(target, format, type, row, column, span);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image)
+{
+ d_1_2_Deprecated->GetConvolutionFilter(target, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyConvolutionFilter1D(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ConvolutionParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glConvolutionParameteri(GLenum target, GLenum pname, GLint params)
+{
+ d_1_2_Deprecated->ConvolutionParameteri(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ConvolutionParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params)
+{
+ d_1_2_Deprecated->ConvolutionParameterf(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
+{
+ d_1_2_Deprecated->ConvolutionFilter1D(target, internalformat, width, format, type, image);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorSubTable(target, start, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
+{
+ d_1_2_Deprecated->ColorSubTable(target, start, count, format, type, data);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_2_Deprecated->GetColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_2_Deprecated->GetColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table)
+{
+ d_1_2_Deprecated->GetColorTable(target, format, type, table);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+ d_1_2_Deprecated->CopyColorTable(target, internalformat, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_2_Deprecated->ColorTableParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_2_Deprecated->ColorTableParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
+{
+ d_1_2_Deprecated->ColorTable(target, internalformat, width, format, type, table);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Deprecated->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
+
+// OpenGL 1.3 deprecated functions
+inline void QOpenGLFunctions_4_3_Compatibility::glMultTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->MultTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLoadTransposeMatrixd(const GLdouble *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixd(m);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glLoadTransposeMatrixf(const GLfloat *m)
+{
+ d_1_3_Deprecated->LoadTransposeMatrixf(m);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord4sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+ d_1_3_Deprecated->MultiTexCoord4s(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord4iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+ d_1_3_Deprecated->MultiTexCoord4i(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord4fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ d_1_3_Deprecated->MultiTexCoord4f(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord4dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord4dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+ d_1_3_Deprecated->MultiTexCoord4d(target, s, t, r, q);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord3sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+ d_1_3_Deprecated->MultiTexCoord3s(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord3iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
+{
+ d_1_3_Deprecated->MultiTexCoord3i(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord3fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+ d_1_3_Deprecated->MultiTexCoord3f(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord3dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord3dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+ d_1_3_Deprecated->MultiTexCoord3d(target, s, t, r);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord2sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord2s(GLenum target, GLshort s, GLshort t)
+{
+ d_1_3_Deprecated->MultiTexCoord2s(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord2iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord2i(GLenum target, GLint s, GLint t)
+{
+ d_1_3_Deprecated->MultiTexCoord2i(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord2fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
+{
+ d_1_3_Deprecated->MultiTexCoord2f(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord2dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord2dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
+{
+ d_1_3_Deprecated->MultiTexCoord2d(target, s, t);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord1sv(GLenum target, const GLshort *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1sv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord1s(GLenum target, GLshort s)
+{
+ d_1_3_Deprecated->MultiTexCoord1s(target, s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord1iv(GLenum target, const GLint *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1iv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord1i(GLenum target, GLint s)
+{
+ d_1_3_Deprecated->MultiTexCoord1i(target, s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord1fv(GLenum target, const GLfloat *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1fv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord1f(GLenum target, GLfloat s)
+{
+ d_1_3_Deprecated->MultiTexCoord1f(target, s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord1dv(GLenum target, const GLdouble *v)
+{
+ d_1_3_Deprecated->MultiTexCoord1dv(target, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glMultiTexCoord1d(GLenum target, GLdouble s)
+{
+ d_1_3_Deprecated->MultiTexCoord1d(target, s);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glClientActiveTexture(GLenum texture)
+{
+ d_1_3_Deprecated->ClientActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 deprecated functions
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos3sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos3s(GLshort x, GLshort y, GLshort z)
+{
+ d_1_4_Deprecated->WindowPos3s(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos3iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos3iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos3i(GLint x, GLint y, GLint z)
+{
+ d_1_4_Deprecated->WindowPos3i(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos3fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos3f(GLfloat x, GLfloat y, GLfloat z)
+{
+ d_1_4_Deprecated->WindowPos3f(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos3dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos3d(GLdouble x, GLdouble y, GLdouble z)
+{
+ d_1_4_Deprecated->WindowPos3d(x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos2sv(const GLshort *v)
+{
+ d_1_4_Deprecated->WindowPos2sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos2s(GLshort x, GLshort y)
+{
+ d_1_4_Deprecated->WindowPos2s(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos2iv(const GLint *v)
+{
+ d_1_4_Deprecated->WindowPos2iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos2i(GLint x, GLint y)
+{
+ d_1_4_Deprecated->WindowPos2i(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos2fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->WindowPos2fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos2f(GLfloat x, GLfloat y)
+{
+ d_1_4_Deprecated->WindowPos2f(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos2dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->WindowPos2dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glWindowPos2d(GLdouble x, GLdouble y)
+{
+ d_1_4_Deprecated->WindowPos2d(x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->SecondaryColorPointer(size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3usv(const GLushort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3usv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3us(GLushort red, GLushort green, GLushort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3us(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3uiv(const GLuint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3uiv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ui(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3ubv(const GLubyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3ubv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3ub(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3sv(const GLshort *v)
+{
+ d_1_4_Deprecated->SecondaryColor3sv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3s(GLshort red, GLshort green, GLshort blue)
+{
+ d_1_4_Deprecated->SecondaryColor3s(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3iv(const GLint *v)
+{
+ d_1_4_Deprecated->SecondaryColor3iv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3i(GLint red, GLint green, GLint blue)
+{
+ d_1_4_Deprecated->SecondaryColor3i(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3fv(const GLfloat *v)
+{
+ d_1_4_Deprecated->SecondaryColor3fv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
+{
+ d_1_4_Deprecated->SecondaryColor3f(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3dv(const GLdouble *v)
+{
+ d_1_4_Deprecated->SecondaryColor3dv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
+{
+ d_1_4_Deprecated->SecondaryColor3d(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3bv(const GLbyte *v)
+{
+ d_1_4_Deprecated->SecondaryColor3bv(v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
+{
+ d_1_4_Deprecated->SecondaryColor3b(red, green, blue);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_1_4_Deprecated->FogCoordPointer(type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogCoorddv(const GLdouble *coord)
+{
+ d_1_4_Deprecated->FogCoorddv(coord);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogCoordd(GLdouble coord)
+{
+ d_1_4_Deprecated->FogCoordd(coord);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogCoordfv(const GLfloat *coord)
+{
+ d_1_4_Deprecated->FogCoordfv(coord);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glFogCoordf(GLfloat coord)
+{
+ d_1_4_Deprecated->FogCoordf(coord);
+}
+
+
+// OpenGL 1.5 deprecated functions
+
+// OpenGL 2.0 deprecated functions
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4usv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4usv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4uiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+ d_2_0_Deprecated->VertexAttrib4s(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4iv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib4fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ d_2_0_Deprecated->VertexAttrib4f(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_2_0_Deprecated->VertexAttrib4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4bv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4bv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nusv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nuiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+ d_2_0_Deprecated->VertexAttrib4Nub(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nsv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4Niv(GLuint index, const GLint *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Niv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
+{
+ d_2_0_Deprecated->VertexAttrib4Nbv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib3sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib3sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+ d_2_0_Deprecated->VertexAttrib3s(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib3fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ d_2_0_Deprecated->VertexAttrib3f(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib3dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_2_0_Deprecated->VertexAttrib3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib2sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib2sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
+{
+ d_2_0_Deprecated->VertexAttrib2s(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib2fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ d_2_0_Deprecated->VertexAttrib2f(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib2dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_2_0_Deprecated->VertexAttrib2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib1sv(GLuint index, const GLshort *v)
+{
+ d_2_0_Deprecated->VertexAttrib1sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib1s(GLuint index, GLshort x)
+{
+ d_2_0_Deprecated->VertexAttrib1s(index, x);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ d_2_0_Deprecated->VertexAttrib1fv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ d_2_0_Deprecated->VertexAttrib1f(index, x);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib1dv(GLuint index, const GLdouble *v)
+{
+ d_2_0_Deprecated->VertexAttrib1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttrib1d(GLuint index, GLdouble x)
+{
+ d_2_0_Deprecated->VertexAttrib1d(index, x);
+}
+
+
+// OpenGL 2.1 deprecated functions
+
+// OpenGL 3.0 deprecated functions
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI4usv(GLuint index, const GLushort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4usv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4ubv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI4sv(GLuint index, const GLshort *v)
+{
+ d_3_0_Deprecated->VertexAttribI4sv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI4bv(GLuint index, const GLbyte *v)
+{
+ d_3_0_Deprecated->VertexAttribI4bv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI3uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI2uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI1uiv(GLuint index, const GLuint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1uiv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI4iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI4iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI3iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI3iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI2iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI2iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI1iv(GLuint index, const GLint *v)
+{
+ d_3_0_Deprecated->VertexAttribI1iv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ d_3_0_Deprecated->VertexAttribI4ui(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
+{
+ d_3_0_Deprecated->VertexAttribI3ui(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
+{
+ d_3_0_Deprecated->VertexAttribI2ui(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI1ui(GLuint index, GLuint x)
+{
+ d_3_0_Deprecated->VertexAttribI1ui(index, x);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ d_3_0_Deprecated->VertexAttribI4i(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
+{
+ d_3_0_Deprecated->VertexAttribI3i(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI2i(GLuint index, GLint x, GLint y)
+{
+ d_3_0_Deprecated->VertexAttribI2i(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Compatibility::glVertexAttribI1i(GLuint index, GLint x)
+{
+ d_3_0_Deprecated->VertexAttribI1i(index, x);
+}
+
+
+// OpenGL 3.1 deprecated functions
+
+// OpenGL 3.2 deprecated functions
+
+// OpenGL 3.3 deprecated functions
+
+// OpenGL 4.0 deprecated functions
+
+// OpenGL 4.1 deprecated functions
+
+// OpenGL 4.2 deprecated functions
+
+// OpenGL 4.3 deprecated functions
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_4_3_core.cpp b/src/gui/opengl/qopenglfunctions_4_3_core.cpp
new file mode 100644
index 0000000000..bfe1bcc9c4
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_3_core.cpp
@@ -0,0 +1,321 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglfunctions_4_3_core.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_4_3_Core
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_4_3_Core class provides all functions for this version and profile of OpenGL.
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_4_3_Core::QOpenGLFunctions_4_3_Core()
+ : QAbstractOpenGLFunctions()
+ , d_1_0_Core(0)
+ , d_1_1_Core(0)
+ , d_1_2_Core(0)
+ , d_1_3_Core(0)
+ , d_1_4_Core(0)
+ , d_1_5_Core(0)
+ , d_2_0_Core(0)
+ , d_2_1_Core(0)
+ , d_3_0_Core(0)
+ , d_3_1_Core(0)
+ , d_3_2_Core(0)
+ , d_3_3_Core(0)
+ , d_4_0_Core(0)
+ , d_4_1_Core(0)
+ , d_4_2_Core(0)
+ , d_4_3_Core(0)
+{
+}
+
+QOpenGLFunctions_4_3_Core::~QOpenGLFunctions_4_3_Core()
+{
+ if (d_1_0_Core && !d_1_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_0_Core->context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ delete d_1_0_Core;
+ }
+ if (d_1_1_Core && !d_1_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_1_Core->context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ delete d_1_1_Core;
+ }
+ if (d_1_2_Core && !d_1_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_2_Core->context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ delete d_1_2_Core;
+ }
+ if (d_1_3_Core && !d_1_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_3_Core->context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ delete d_1_3_Core;
+ }
+ if (d_1_4_Core && !d_1_4_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_4_Core->context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ delete d_1_4_Core;
+ }
+ if (d_1_5_Core && !d_1_5_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_1_5_Core->context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ delete d_1_5_Core;
+ }
+ if (d_2_0_Core && !d_2_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_0_Core->context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ delete d_2_0_Core;
+ }
+ if (d_2_1_Core && !d_2_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_2_1_Core->context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ delete d_2_1_Core;
+ }
+ if (d_3_0_Core && !d_3_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_0_Core->context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ delete d_3_0_Core;
+ }
+ if (d_3_1_Core && !d_3_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_1_Core->context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ delete d_3_1_Core;
+ }
+ if (d_3_2_Core && !d_3_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_2_Core->context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ delete d_3_2_Core;
+ }
+ if (d_3_3_Core && !d_3_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_3_3_Core->context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ delete d_3_3_Core;
+ }
+ if (d_4_0_Core && !d_4_0_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_0_Core->context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ delete d_4_0_Core;
+ }
+ if (d_4_1_Core && !d_4_1_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_1_Core->context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ delete d_4_1_Core;
+ }
+ if (d_4_2_Core && !d_4_2_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_2_Core->context, QOpenGLFunctions_4_2_CoreBackend::versionStatus());
+ delete d_4_2_Core;
+ }
+ if (d_4_3_Core && !d_4_3_Core->refs.deref()) {
+ QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(d_4_3_Core->context, QOpenGLFunctions_4_3_CoreBackend::versionStatus());
+ delete d_4_3_Core;
+ }
+}
+
+bool QOpenGLFunctions_4_3_Core::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is capable of resolving all needed functions
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_4_3_Core::isContextCompatible(context))
+ {
+ // Associate with private implementation, creating if necessary
+ // Function pointers in the backends are resolved at creation time
+ QOpenGLVersionFunctionsBackend* d = 0;
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_0_CoreBackend::versionStatus(), d);
+ }
+ d_1_0_Core = static_cast<QOpenGLFunctions_1_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_1_CoreBackend::versionStatus(), d);
+ }
+ d_1_1_Core = static_cast<QOpenGLFunctions_1_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_2_CoreBackend::versionStatus(), d);
+ }
+ d_1_2_Core = static_cast<QOpenGLFunctions_1_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_3_CoreBackend::versionStatus(), d);
+ }
+ d_1_3_Core = static_cast<QOpenGLFunctions_1_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_4_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_4_CoreBackend::versionStatus(), d);
+ }
+ d_1_4_Core = static_cast<QOpenGLFunctions_1_4_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_1_5_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_1_5_CoreBackend::versionStatus(), d);
+ }
+ d_1_5_Core = static_cast<QOpenGLFunctions_1_5_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_0_CoreBackend::versionStatus(), d);
+ }
+ d_2_0_Core = static_cast<QOpenGLFunctions_2_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_2_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_2_1_CoreBackend::versionStatus(), d);
+ }
+ d_2_1_Core = static_cast<QOpenGLFunctions_2_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_0_CoreBackend::versionStatus(), d);
+ }
+ d_3_0_Core = static_cast<QOpenGLFunctions_3_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_1_CoreBackend::versionStatus(), d);
+ }
+ d_3_1_Core = static_cast<QOpenGLFunctions_3_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_2_CoreBackend::versionStatus(), d);
+ }
+ d_3_2_Core = static_cast<QOpenGLFunctions_3_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_3_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_3_3_CoreBackend::versionStatus(), d);
+ }
+ d_3_3_Core = static_cast<QOpenGLFunctions_3_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_0_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_0_CoreBackend::versionStatus(), d);
+ }
+ d_4_0_Core = static_cast<QOpenGLFunctions_4_0_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_1_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_1_CoreBackend::versionStatus(), d);
+ }
+ d_4_1_Core = static_cast<QOpenGLFunctions_4_1_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_2_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_2_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_2_CoreBackend::versionStatus(), d);
+ }
+ d_4_2_Core = static_cast<QOpenGLFunctions_4_2_CoreBackend*>(d);
+ d->refs.ref();
+
+ d = QAbstractOpenGLFunctionsPrivate::functionsBackend(context, QOpenGLFunctions_4_3_CoreBackend::versionStatus());
+ if (!d) {
+ d = new QOpenGLFunctions_4_3_CoreBackend(context);
+ QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(context, QOpenGLFunctions_4_3_CoreBackend::versionStatus(), d);
+ }
+ d_4_3_Core = static_cast<QOpenGLFunctions_4_3_CoreBackend*>(d);
+ d->refs.ref();
+
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_4_3_Core::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(4, 3))
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_4_3_Core::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ v.setVersion(4, 3);
+ v.setProfile(QSurfaceFormat::CoreProfile);
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_4_3_core.h b/src/gui/opengl/qopenglfunctions_4_3_core.h
new file mode 100644
index 0000000000..c004594eb8
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_4_3_core.h
@@ -0,0 +1,3158 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_4_3_CORE_H
+#define QOPENGLVERSIONFUNCTIONS_4_3_CORE_H
+
+#include <QtCore/qglobal.h>
+
+#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class Q_GUI_EXPORT QOpenGLFunctions_4_3_Core : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_4_3_Core();
+ ~QOpenGLFunctions_4_3_Core();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL 1.0 core functions
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glDepthRange(GLdouble nearVal, GLdouble farVal);
+ GLboolean glIsEnabled(GLenum cap);
+ void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
+ void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * glGetString(GLenum name);
+ void glGetIntegerv(GLenum pname, GLint *params);
+ void glGetFloatv(GLenum pname, GLfloat *params);
+ GLenum glGetError();
+ void glGetDoublev(GLenum pname, GLdouble *params);
+ void glGetBooleanv(GLenum pname, GLboolean *params);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void glReadBuffer(GLenum mode);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPixelStoref(GLenum pname, GLfloat param);
+ void glDepthFunc(GLenum func);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glLogicOp(GLenum opcode);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glFlush();
+ void glFinish();
+ void glEnable(GLenum cap);
+ void glDisable(GLenum cap);
+ void glDepthMask(GLboolean flag);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glStencilMask(GLuint mask);
+ void glClearDepth(GLdouble depth);
+ void glClearStencil(GLint s);
+ void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void glClear(GLbitfield mask);
+ void glDrawBuffer(GLenum mode);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glPolygonMode(GLenum face, GLenum mode);
+ void glPointSize(GLfloat size);
+ void glLineWidth(GLfloat width);
+ void glHint(GLenum target, GLenum mode);
+ void glFrontFace(GLenum mode);
+ void glCullFace(GLenum mode);
+
+ // OpenGL 1.1 core functions
+ void glIndexubv(const GLubyte *c);
+ void glIndexub(GLubyte c);
+ GLboolean glIsTexture(GLuint texture);
+ void glGenTextures(GLsizei n, GLuint *textures);
+ void glDeleteTextures(GLsizei n, const GLuint *textures);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glGetPointerv(GLenum pname, GLvoid* *params);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+
+ // OpenGL 1.2 core functions
+ void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void glBlendEquation(GLenum mode);
+ void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+ // OpenGL 1.3 core functions
+ void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
+ void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void glSampleCoverage(GLfloat value, GLboolean invert);
+ void glActiveTexture(GLenum texture);
+
+ // OpenGL 1.4 core functions
+ void glPointParameteriv(GLenum pname, const GLint *params);
+ void glPointParameteri(GLenum pname, GLint param);
+ void glPointParameterfv(GLenum pname, const GLfloat *params);
+ void glPointParameterf(GLenum pname, GLfloat param);
+ void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+ // OpenGL 1.5 core functions
+ void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ GLboolean glUnmapBuffer(GLenum target);
+ GLvoid* glMapBuffer(GLenum target, GLenum access);
+ void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean glIsBuffer(GLuint buffer);
+ void glGenBuffers(GLsizei n, GLuint *buffers);
+ void glDeleteBuffers(GLsizei n, const GLuint *buffers);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
+ void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
+ void glEndQuery(GLenum target);
+ void glBeginQuery(GLenum target, GLuint id);
+ GLboolean glIsQuery(GLuint id);
+ void glDeleteQueries(GLsizei n, const GLuint *ids);
+ void glGenQueries(GLsizei n, GLuint *ids);
+
+ // OpenGL 2.0 core functions
+ void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void glValidateProgram(GLuint program);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniform4iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform3iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform2iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform1iv(GLint location, GLsizei count, const GLint *value);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ void glUniform2i(GLint location, GLint v0, GLint v1);
+ void glUniform1i(GLint location, GLint v0);
+ void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
+ void glUniform1f(GLint location, GLfloat v0);
+ void glUseProgram(GLuint program);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void glLinkProgram(GLuint program);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsProgram(GLuint program);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
+ void glGetUniformiv(GLuint program, GLint location, GLint *params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
+ GLint glGetUniformLocation(GLuint program, const GLchar *name);
+ void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
+ GLint glGetAttribLocation(GLuint program, const GLchar *name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void glEnableVertexAttribArray(GLuint index);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDeleteShader(GLuint shader);
+ void glDeleteProgram(GLuint program);
+ GLuint glCreateShader(GLenum type);
+ GLuint glCreateProgram();
+ void glCompileShader(GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void glDrawBuffers(GLsizei n, const GLenum *bufs);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+
+ // OpenGL 2.1 core functions
+ void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+ // OpenGL 3.0 core functions
+ GLboolean glIsVertexArray(GLuint array);
+ void glGenVertexArrays(GLsizei n, GLuint *arrays);
+ void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ void glBindVertexArray(GLuint array);
+ void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void glGenerateMipmap(GLenum target);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ const GLubyte * glGetStringi(GLenum name, GLuint index);
+ void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
+ void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
+ void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
+ void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
+ void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glUniform2ui(GLint location, GLuint v0, GLuint v1);
+ void glUniform1ui(GLint location, GLuint v0);
+ GLint glGetFragDataLocation(GLuint program, const GLchar *name);
+ void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
+ void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
+ void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glEndConditionalRender();
+ void glBeginConditionalRender(GLuint id, GLenum mode);
+ void glClampColor(GLenum target, GLenum clamp);
+ void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glEndTransformFeedback();
+ void glBeginTransformFeedback(GLenum primitiveMode);
+ GLboolean glIsEnabledi(GLenum target, GLuint index);
+ void glDisablei(GLenum target, GLuint index);
+ void glEnablei(GLenum target, GLuint index);
+ void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+ // OpenGL 3.1 core functions
+ void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
+ void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void glPrimitiveRestartIndex(GLuint index);
+ void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
+ void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+ // OpenGL 3.2 core functions
+ void glSampleMaski(GLuint index, GLbitfield mask);
+ void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void glGetInteger64v(GLenum pname, GLint64 *params);
+ void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void glDeleteSync(GLsync sync);
+ GLboolean glIsSync(GLsync sync);
+ GLsync glFenceSync(GLenum condition, GLbitfield flags);
+ void glProvokingVertex(GLenum mode);
+ void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+
+ // OpenGL 3.3 core functions
+ void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
+ void glSecondaryColorP3ui(GLenum type, GLuint color);
+ void glColorP4uiv(GLenum type, const GLuint *color);
+ void glColorP4ui(GLenum type, GLuint color);
+ void glColorP3uiv(GLenum type, const GLuint *color);
+ void glColorP3ui(GLenum type, GLuint color);
+ void glNormalP3uiv(GLenum type, const GLuint *coords);
+ void glNormalP3ui(GLenum type, GLuint coords);
+ void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
+ void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
+ void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
+ void glTexCoordP4uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP4ui(GLenum type, GLuint coords);
+ void glTexCoordP3uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP3ui(GLenum type, GLuint coords);
+ void glTexCoordP2uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP2ui(GLenum type, GLuint coords);
+ void glTexCoordP1uiv(GLenum type, const GLuint *coords);
+ void glTexCoordP1ui(GLenum type, GLuint coords);
+ void glVertexP4uiv(GLenum type, const GLuint *value);
+ void glVertexP4ui(GLenum type, GLuint value);
+ void glVertexP3uiv(GLenum type, const GLuint *value);
+ void glVertexP3ui(GLenum type, GLuint value);
+ void glVertexP2uiv(GLenum type, const GLuint *value);
+ void glVertexP2ui(GLenum type, GLuint value);
+ void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
+ void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
+ void glQueryCounter(GLuint id, GLenum target);
+ void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
+ void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
+ void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
+ void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
+ void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ void glBindSampler(GLuint unit, GLuint sampler);
+ GLboolean glIsSampler(GLuint sampler);
+ void glDeleteSamplers(GLsizei count, const GLuint *samplers);
+ void glGenSamplers(GLsizei count, GLuint *samplers);
+ GLint glGetFragDataIndex(GLuint program, const GLchar *name);
+ void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void glVertexAttribDivisor(GLuint index, GLuint divisor);
+
+ // OpenGL 4.0 core functions
+ void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void glEndQueryIndexed(GLenum target, GLuint index);
+ void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
+ void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
+ void glDrawTransformFeedback(GLenum mode, GLuint id);
+ void glResumeTransformFeedback();
+ void glPauseTransformFeedback();
+ GLboolean glIsTransformFeedback(GLuint id);
+ void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
+ void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ void glBindTransformFeedback(GLenum target, GLuint id);
+ void glPatchParameterfv(GLenum pname, const GLfloat *values);
+ void glPatchParameteri(GLenum pname, GLint value);
+ void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
+ void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
+ void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
+ void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
+ void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void glUniform2d(GLint location, GLdouble x, GLdouble y);
+ void glUniform1d(GLint location, GLdouble x);
+ void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
+ void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
+ void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
+ void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void glBlendEquationi(GLuint buf, GLenum mode);
+ void glMinSampleShading(GLfloat value);
+
+ // OpenGL 4.1 core functions
+ void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
+ void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
+ void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
+ void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
+ void glScissorIndexedv(GLuint index, const GLint *v);
+ void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
+ void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
+ void glViewportIndexedfv(GLuint index, const GLfloat *v);
+ void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
+ void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
+ void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
+ void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void glVertexAttribL4dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL3dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL2dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL1dv(GLuint index, const GLdouble *v);
+ void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
+ void glVertexAttribL1d(GLuint index, GLdouble x);
+ void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void glValidateProgramPipeline(GLuint pipeline);
+ void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
+ void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
+ void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+ void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
+ void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
+ void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
+ void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
+ void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
+ void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
+ void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
+ void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void glProgramUniform1i(GLuint program, GLint location, GLint v0);
+ void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
+ GLboolean glIsProgramPipeline(GLuint pipeline);
+ void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
+ void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
+ void glBindProgramPipeline(GLuint pipeline);
+ GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
+ void glActiveShaderProgram(GLuint pipeline, GLuint program);
+ void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
+ void glProgramParameteri(GLuint program, GLenum pname, GLint value);
+ void glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+ void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+ void glClearDepthf(GLfloat dd);
+ void glDepthRangef(GLfloat n, GLfloat f);
+ void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+ void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+ void glReleaseShaderCompiler();
+
+ // OpenGL 4.2 core functions
+ void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+ void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
+ void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
+ void glMemoryBarrier(GLbitfield barriers);
+ void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
+ void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
+ void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
+ void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
+ void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
+ void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
+ void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
+ void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
+
+ // OpenGL 4.3 core functions
+ void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
+ GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name);
+ GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name);
+ void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
+ void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
+ GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name);
+ void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params);
+ void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
+ void glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
+ void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
+ void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);
+ void glInvalidateBufferData(GLuint buffer);
+ void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length);
+ void glInvalidateTexImage(GLuint texture, GLint level);
+ void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
+ void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
+ void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ void glFramebufferParameteri(GLenum target, GLenum pname, GLint param);
+ void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor);
+ void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex);
+ void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+ void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+ void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+ void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+ void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
+ void glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
+ void glDispatchComputeIndirect(GLintptr indirect);
+ void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
+ void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
+ void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
+ QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
+ QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
+ QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
+ QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
+ QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
+ QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
+ QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
+ QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
+ QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
+ QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
+ QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
+ QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
+ QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
+ QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
+ QOpenGLFunctions_4_3_CoreBackend* d_4_3_Core;
+};
+
+// OpenGL 1.0 core functions
+inline void QOpenGLFunctions_4_3_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Viewport(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
+{
+ d_1_0_Core->DepthRange(nearVal, farVal);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsEnabled(GLenum cap)
+{
+ return d_1_0_Core->IsEnabled(cap);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexLevelParameteriv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexLevelParameterfv(target, level, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->GetTexImage(target, level, format, type, pixels);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_3_Core::glGetString(GLenum name)
+{
+ return d_1_0_Core->GetString(name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetIntegerv(GLenum pname, GLint *params)
+{
+ d_1_0_Core->GetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetFloatv(GLenum pname, GLfloat *params)
+{
+ d_1_0_Core->GetFloatv(pname, params);
+}
+
+inline GLenum QOpenGLFunctions_4_3_Core::glGetError()
+{
+ return d_1_0_Core->GetError();
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetDoublev(GLenum pname, GLdouble *params)
+{
+ d_1_0_Core->GetDoublev(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetBooleanv(GLenum pname, GLboolean *params)
+{
+ d_1_0_Core->GetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
+{
+ d_1_0_Core->ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glReadBuffer(GLenum mode)
+{
+ d_1_0_Core->ReadBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPixelStorei(GLenum pname, GLint param)
+{
+ d_1_0_Core->PixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPixelStoref(GLenum pname, GLfloat param)
+{
+ d_1_0_Core->PixelStoref(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDepthFunc(GLenum func)
+{
+ d_1_0_Core->DepthFunc(func);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ d_1_0_Core->StencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ d_1_0_Core->StencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glLogicOp(GLenum opcode)
+{
+ d_1_0_Core->LogicOp(opcode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ d_1_0_Core->BlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFlush()
+{
+ d_1_0_Core->Flush();
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFinish()
+{
+ d_1_0_Core->Finish();
+}
+
+inline void QOpenGLFunctions_4_3_Core::glEnable(GLenum cap)
+{
+ d_1_0_Core->Enable(cap);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDisable(GLenum cap)
+{
+ d_1_0_Core->Disable(cap);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDepthMask(GLboolean flag)
+{
+ d_1_0_Core->DepthMask(flag);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ d_1_0_Core->ColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glStencilMask(GLuint mask)
+{
+ d_1_0_Core->StencilMask(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearDepth(GLdouble depth)
+{
+ d_1_0_Core->ClearDepth(depth);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearStencil(GLint s)
+{
+ d_1_0_Core->ClearStencil(s);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_0_Core->ClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClear(GLbitfield mask)
+{
+ d_1_0_Core->Clear(mask);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawBuffer(GLenum mode)
+{
+ d_1_0_Core->DrawBuffer(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_0_Core->TexImage1D(target, level, internalformat, width, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_1_0_Core->TexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_1_0_Core->TexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ d_1_0_Core->TexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ d_1_0_Core->TexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_0_Core->Scissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPolygonMode(GLenum face, GLenum mode)
+{
+ d_1_0_Core->PolygonMode(face, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPointSize(GLfloat size)
+{
+ d_1_0_Core->PointSize(size);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glLineWidth(GLfloat width)
+{
+ d_1_0_Core->LineWidth(width);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glHint(GLenum target, GLenum mode)
+{
+ d_1_0_Core->Hint(target, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFrontFace(GLenum mode)
+{
+ d_1_0_Core->FrontFace(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCullFace(GLenum mode)
+{
+ d_1_0_Core->CullFace(mode);
+}
+
+
+// OpenGL 1.1 core functions
+inline void QOpenGLFunctions_4_3_Core::glIndexubv(const GLubyte *c)
+{
+ d_1_1_Core->Indexubv(c);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glIndexub(GLubyte c)
+{
+ d_1_1_Core->Indexub(c);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsTexture(GLuint texture)
+{
+ return d_1_1_Core->IsTexture(texture);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenTextures(GLsizei n, GLuint *textures)
+{
+ d_1_1_Core->GenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ d_1_1_Core->DeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindTexture(GLenum target, GLuint texture)
+{
+ d_1_1_Core->BindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_1_Core->TexSubImage1D(target, level, xoffset, width, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_1_Core->CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+ d_1_1_Core->CopyTexSubImage1D(target, level, xoffset, x, y, width);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ d_1_1_Core->CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+ d_1_1_Core->CopyTexImage1D(target, level, internalformat, x, y, width, border);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ d_1_1_Core->PolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetPointerv(GLenum pname, GLvoid* *params)
+{
+ d_1_1_Core->GetPointerv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_1_Core->DrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ d_1_1_Core->DrawArrays(mode, first, count);
+}
+
+
+// OpenGL 1.2 core functions
+inline void QOpenGLFunctions_4_3_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_1_2_Core->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
+{
+ d_1_2_Core->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
+{
+ d_1_2_Core->DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendEquation(GLenum mode)
+{
+ d_1_2_Core->BlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ d_1_2_Core->BlendColor(red, green, blue, alpha);
+}
+
+
+// OpenGL 1.3 core functions
+inline void QOpenGLFunctions_4_3_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
+{
+ d_1_3_Core->GetCompressedTexImage(target, level, img);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
+{
+ d_1_3_Core->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ d_1_3_Core->SampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glActiveTexture(GLenum texture)
+{
+ d_1_3_Core->ActiveTexture(texture);
+}
+
+
+// OpenGL 1.4 core functions
+inline void QOpenGLFunctions_4_3_Core::glPointParameteriv(GLenum pname, const GLint *params)
+{
+ d_1_4_Core->PointParameteriv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPointParameteri(GLenum pname, GLint param)
+{
+ d_1_4_Core->PointParameteri(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ d_1_4_Core->PointParameterfv(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPointParameterf(GLenum pname, GLfloat param)
+{
+ d_1_4_Core->PointParameterf(pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawElements(mode, count, type, indices, drawcount);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
+{
+ d_1_4_Core->MultiDrawArrays(mode, first, count, drawcount);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+ d_1_4_Core->BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+
+// OpenGL 1.5 core functions
+inline void QOpenGLFunctions_4_3_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
+{
+ d_1_5_Core->GetBufferPointerv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetBufferParameteriv(target, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glUnmapBuffer(GLenum target)
+{
+ return d_1_5_Core->UnmapBuffer(target);
+}
+
+inline GLvoid* QOpenGLFunctions_4_3_Core::glMapBuffer(GLenum target, GLenum access)
+{
+ return d_1_5_Core->MapBuffer(target, access);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
+{
+ d_1_5_Core->GetBufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
+{
+ d_1_5_Core->BufferSubData(target, offset, size, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
+{
+ d_1_5_Core->BufferData(target, size, data, usage);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsBuffer(GLuint buffer)
+{
+ return d_1_5_Core->IsBuffer(buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ d_1_5_Core->GenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ d_1_5_Core->DeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindBuffer(GLenum target, GLuint buffer)
+{
+ d_1_5_Core->BindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ d_1_5_Core->GetQueryObjectuiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryObjectiv(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_1_5_Core->GetQueryiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glEndQuery(GLenum target)
+{
+ d_1_5_Core->EndQuery(target);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBeginQuery(GLenum target, GLuint id)
+{
+ d_1_5_Core->BeginQuery(target, id);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsQuery(GLuint id)
+{
+ return d_1_5_Core->IsQuery(id);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ d_1_5_Core->DeleteQueries(n, ids);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenQueries(GLsizei n, GLuint *ids)
+{
+ d_1_5_Core->GenQueries(n, ids);
+}
+
+
+// OpenGL 2.0 core functions
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
+{
+ d_2_0_Core->VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glValidateProgram(GLuint program)
+{
+ d_2_0_Core->ValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_0_Core->UniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform4iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform3iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform2iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ d_2_0_Core->Uniform1iv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform4fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform3fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform2fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ d_2_0_Core->Uniform1fv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_2_0_Core->Uniform4i(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_2_0_Core->Uniform3i(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ d_2_0_Core->Uniform2i(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform1i(GLint location, GLint v0)
+{
+ d_2_0_Core->Uniform1i(location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_2_0_Core->Uniform4f(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_2_0_Core->Uniform3f(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ d_2_0_Core->Uniform2f(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform1f(GLint location, GLfloat v0)
+{
+ d_2_0_Core->Uniform1f(location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUseProgram(GLuint program)
+{
+ d_2_0_Core->UseProgram(program);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
+{
+ d_2_0_Core->ShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glLinkProgram(GLuint program)
+{
+ d_2_0_Core->LinkProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsShader(GLuint shader)
+{
+ return d_2_0_Core->IsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsProgram(GLuint program)
+{
+ return d_2_0_Core->IsProgram(program);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
+{
+ d_2_0_Core->GetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ d_2_0_Core->GetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_2_0_Core->GetVertexAttribdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ d_2_0_Core->GetUniformiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ d_2_0_Core->GetUniformfv(program, location, params);
+}
+
+inline GLint QOpenGLFunctions_4_3_Core::glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ d_2_0_Core->GetShaderSource(shader, bufSize, length, source);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_2_0_Core->GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ d_2_0_Core->GetProgramiv(program, pname, params);
+}
+
+inline GLint QOpenGLFunctions_4_3_Core::glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return d_2_0_Core->GetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
+{
+ d_2_0_Core->GetAttachedShaders(program, maxCount, count, obj);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
+{
+ d_2_0_Core->GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glEnableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->EnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDisableVertexAttribArray(GLuint index)
+{
+ d_2_0_Core->DisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDetachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->DetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteShader(GLuint shader)
+{
+ d_2_0_Core->DeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteProgram(GLuint program)
+{
+ d_2_0_Core->DeleteProgram(program);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Core::glCreateShader(GLenum type)
+{
+ return d_2_0_Core->CreateShader(type);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Core::glCreateProgram()
+{
+ return d_2_0_Core->CreateProgram();
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCompileShader(GLuint shader)
+{
+ d_2_0_Core->CompileShader(shader);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ d_2_0_Core->BindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glAttachShader(GLuint program, GLuint shader)
+{
+ d_2_0_Core->AttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ d_2_0_Core->StencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ d_2_0_Core->StencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ d_2_0_Core->StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ d_2_0_Core->DrawBuffers(n, bufs);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ d_2_0_Core->BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+
+// OpenGL 2.1 core functions
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_2_1_Core->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+
+// OpenGL 3.0 core functions
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsVertexArray(GLuint array)
+{
+ return d_3_0_Core->IsVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ d_3_0_Core->GenVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ d_3_0_Core->DeleteVertexArrays(n, arrays);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindVertexArray(GLuint array)
+{
+ d_3_0_Core->BindVertexArray(array);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ d_3_0_Core->FlushMappedBufferRange(target, offset, length);
+}
+
+inline GLvoid* QOpenGLFunctions_4_3_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+ return d_3_0_Core->MapBufferRange(target, offset, length, access);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ d_3_0_Core->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
+{
+ d_3_0_Core->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenerateMipmap(GLenum target)
+{
+ d_3_0_Core->GenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ d_3_0_Core->FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+ d_3_0_Core->FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ d_3_0_Core->FramebufferTexture1D(target, attachment, textarget, texture, level);
+}
+
+inline GLenum QOpenGLFunctions_4_3_Core::glCheckFramebufferStatus(GLenum target)
+{
+ return d_3_0_Core->CheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ d_3_0_Core->GenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ d_3_0_Core->DeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ d_3_0_Core->BindFramebuffer(target, framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsFramebuffer(GLuint framebuffer)
+{
+ return d_3_0_Core->IsFramebuffer(framebuffer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_3_0_Core->RenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ d_3_0_Core->GenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ d_3_0_Core->DeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ d_3_0_Core->BindRenderbuffer(target, renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return d_3_0_Core->IsRenderbuffer(renderbuffer);
+}
+
+inline const GLubyte * QOpenGLFunctions_4_3_Core::glGetStringi(GLenum name, GLuint index)
+{
+ return d_3_0_Core->GetStringi(name, index);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ d_3_0_Core->ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ d_3_0_Core->ClearBufferfv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ d_3_0_Core->ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ d_3_0_Core->ClearBufferiv(buffer, drawbuffer, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetTexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetTexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
+{
+ d_3_0_Core->TexParameterIuiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
+{
+ d_3_0_Core->TexParameterIiv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform4uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform3uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform2uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ d_3_0_Core->Uniform1uiv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_3_0_Core->Uniform4ui(location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_3_0_Core->Uniform3ui(location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ d_3_0_Core->Uniform2ui(location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform1ui(GLint location, GLuint v0)
+{
+ d_3_0_Core->Uniform1ui(location, v0);
+}
+
+inline GLint QOpenGLFunctions_4_3_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return d_3_0_Core->GetFragDataLocation(program, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
+{
+ d_3_0_Core->BindFragDataLocation(program, color, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ d_3_0_Core->GetUniformuiv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ d_3_0_Core->GetVertexAttribIuiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ d_3_0_Core->GetVertexAttribIiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_3_0_Core->VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glEndConditionalRender()
+{
+ d_3_0_Core->EndConditionalRender();
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBeginConditionalRender(GLuint id, GLenum mode)
+{
+ d_3_0_Core->BeginConditionalRender(id, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClampColor(GLenum target, GLenum clamp)
+{
+ d_3_0_Core->ClampColor(target, clamp);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
+{
+ d_3_0_Core->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
+{
+ d_3_0_Core->TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ d_3_0_Core->BindBufferBase(target, index, buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_3_0_Core->BindBufferRange(target, index, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glEndTransformFeedback()
+{
+ d_3_0_Core->EndTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBeginTransformFeedback(GLenum primitiveMode)
+{
+ d_3_0_Core->BeginTransformFeedback(primitiveMode);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsEnabledi(GLenum target, GLuint index)
+{
+ return d_3_0_Core->IsEnabledi(target, index);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDisablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Disablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glEnablei(GLenum target, GLuint index)
+{
+ d_3_0_Core->Enablei(target, index);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ d_3_0_Core->GetIntegeri_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ d_3_0_Core->GetBooleani_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+ d_3_0_Core->ColorMaski(index, r, g, b, a);
+}
+
+
+// OpenGL 3.1 core functions
+inline void QOpenGLFunctions_4_3_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+ d_3_1_Core->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
+{
+ d_3_1_Core->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
+{
+ d_3_1_Core->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return d_3_1_Core->GetUniformBlockIndex(program, uniformBlockName);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
+{
+ d_3_1_Core->GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
+{
+ d_3_1_Core->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
+{
+ d_3_1_Core->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPrimitiveRestartIndex(GLuint index)
+{
+ d_3_1_Core->PrimitiveRestartIndex(index);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
+{
+ d_3_1_Core->TexBuffer(target, internalformat, buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
+{
+ d_3_1_Core->DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ d_3_1_Core->DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+
+// OpenGL 3.2 core functions
+inline void QOpenGLFunctions_4_3_Core::glSampleMaski(GLuint index, GLbitfield mask)
+{
+ d_3_2_Core->SampleMaski(index, mask);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ d_3_2_Core->GetMultisamplefv(pname, index, val);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_3_2_Core->TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ d_3_2_Core->GetSynciv(sync, pname, bufSize, length, values);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetInteger64v(GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetInteger64v(pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ d_3_2_Core->WaitSync(sync, flags, timeout);
+}
+
+inline GLenum QOpenGLFunctions_4_3_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return d_3_2_Core->ClientWaitSync(sync, flags, timeout);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteSync(GLsync sync)
+{
+ d_3_2_Core->DeleteSync(sync);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsSync(GLsync sync)
+{
+ return d_3_2_Core->IsSync(sync);
+}
+
+inline GLsync QOpenGLFunctions_4_3_Core::glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return d_3_2_Core->FenceSync(condition, flags);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProvokingVertex(GLenum mode)
+{
+ d_3_2_Core->ProvokingVertex(mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
+{
+ d_3_2_Core->MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
+{
+ d_3_2_Core->DrawElementsBaseVertex(mode, count, type, indices, basevertex);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
+{
+ d_3_2_Core->FramebufferTexture(target, attachment, texture, level);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ d_3_2_Core->GetBufferParameteri64v(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ d_3_2_Core->GetInteger64i_v(target, index, data);
+}
+
+
+// OpenGL 3.3 core functions
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP4uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP4ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP3uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP3ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP2uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP2ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
+{
+ d_3_3_Core->VertexAttribP1uiv(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
+{
+ d_3_3_Core->VertexAttribP1ui(index, type, normalized, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->SecondaryColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSecondaryColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->SecondaryColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glColorP4uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP4uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glColorP4ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP4ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glColorP3uiv(GLenum type, const GLuint *color)
+{
+ d_3_3_Core->ColorP3uiv(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glColorP3ui(GLenum type, GLuint color)
+{
+ d_3_3_Core->ColorP3ui(type, color);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glNormalP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->NormalP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glNormalP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->NormalP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP4uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP4ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP3uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP3ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP2uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP2ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->MultiTexCoordP1uiv(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
+{
+ d_3_3_Core->MultiTexCoordP1ui(texture, type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexCoordP4uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP4uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexCoordP4ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP4ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexCoordP3uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP3uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexCoordP3ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP3ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexCoordP2uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP2uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexCoordP2ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP2ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexCoordP1uiv(GLenum type, const GLuint *coords)
+{
+ d_3_3_Core->TexCoordP1uiv(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexCoordP1ui(GLenum type, GLuint coords)
+{
+ d_3_3_Core->TexCoordP1ui(type, coords);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexP4uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP4uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexP4ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP4ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexP3uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP3uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexP3ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP3ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexP2uiv(GLenum type, const GLuint *value)
+{
+ d_3_3_Core->VertexP2uiv(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexP2ui(GLenum type, GLuint value)
+{
+ d_3_3_Core->VertexP2ui(type, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
+{
+ d_3_3_Core->GetQueryObjectui64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
+{
+ d_3_3_Core->GetQueryObjecti64v(id, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glQueryCounter(GLuint id, GLenum target)
+{
+ d_3_3_Core->QueryCounter(id, target);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
+{
+ d_3_3_Core->GetSamplerParameterIuiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ d_3_3_Core->GetSamplerParameterfv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameterIiv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ d_3_3_Core->GetSamplerParameteriv(sampler, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ d_3_3_Core->SamplerParameterIuiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameterIiv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ d_3_3_Core->SamplerParameterfv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ d_3_3_Core->SamplerParameterf(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ d_3_3_Core->SamplerParameteriv(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ d_3_3_Core->SamplerParameteri(sampler, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindSampler(GLuint unit, GLuint sampler)
+{
+ d_3_3_Core->BindSampler(unit, sampler);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsSampler(GLuint sampler)
+{
+ return d_3_3_Core->IsSampler(sampler);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ d_3_3_Core->DeleteSamplers(count, samplers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ d_3_3_Core->GenSamplers(count, samplers);
+}
+
+inline GLint QOpenGLFunctions_4_3_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
+{
+ return d_3_3_Core->GetFragDataIndex(program, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
+{
+ d_3_3_Core->BindFragDataLocationIndexed(program, colorNumber, index, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ d_3_3_Core->VertexAttribDivisor(index, divisor);
+}
+
+
+// OpenGL 4.0 core functions
+inline void QOpenGLFunctions_4_3_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
+{
+ d_4_0_Core->GetQueryIndexediv(target, index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glEndQueryIndexed(GLenum target, GLuint index)
+{
+ d_4_0_Core->EndQueryIndexed(target, index);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
+{
+ d_4_0_Core->BeginQueryIndexed(target, index, id);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
+{
+ d_4_0_Core->DrawTransformFeedbackStream(mode, id, stream);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
+{
+ d_4_0_Core->DrawTransformFeedback(mode, id);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glResumeTransformFeedback()
+{
+ d_4_0_Core->ResumeTransformFeedback();
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPauseTransformFeedback()
+{
+ d_4_0_Core->PauseTransformFeedback();
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsTransformFeedback(GLuint id)
+{
+ return d_4_0_Core->IsTransformFeedback(id);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ d_4_0_Core->GenTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ d_4_0_Core->DeleteTransformFeedbacks(n, ids);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindTransformFeedback(GLenum target, GLuint id)
+{
+ d_4_0_Core->BindTransformFeedback(target, id);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
+{
+ d_4_0_Core->PatchParameterfv(pname, values);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glPatchParameteri(GLenum pname, GLint value)
+{
+ d_4_0_Core->PatchParameteri(pname, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetProgramStageiv(program, shadertype, pname, values);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
+{
+ d_4_0_Core->GetUniformSubroutineuiv(shadertype, location, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
+{
+ d_4_0_Core->UniformSubroutinesuiv(shadertype, count, indices);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
+{
+ d_4_0_Core->GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
+{
+ d_4_0_Core->GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineIndex(program, shadertype, name);
+}
+
+inline GLint QOpenGLFunctions_4_3_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
+{
+ return d_4_0_Core->GetSubroutineUniformLocation(program, shadertype, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
+{
+ d_4_0_Core->GetUniformdv(program, location, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3x2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2x3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix4dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix3dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_0_Core->UniformMatrix2dv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform4dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform3dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform2dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_0_Core->Uniform1dv(location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_0_Core->Uniform4d(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_0_Core->Uniform3d(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
+{
+ d_4_0_Core->Uniform2d(location, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUniform1d(GLint location, GLdouble x)
+{
+ d_4_0_Core->Uniform1d(location, x);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawElementsIndirect(mode, type, indirect);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
+{
+ d_4_0_Core->DrawArraysIndirect(mode, indirect);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ d_4_0_Core->BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
+{
+ d_4_0_Core->BlendFunci(buf, src, dst);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
+{
+ d_4_0_Core->BlendEquationSeparatei(buf, modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBlendEquationi(GLuint buf, GLenum mode)
+{
+ d_4_0_Core->BlendEquationi(buf, mode);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMinSampleShading(GLfloat value)
+{
+ d_4_0_Core->MinSampleShading(value);
+}
+
+
+// OpenGL 4.1 core functions
+inline void QOpenGLFunctions_4_3_Core::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
+{
+ d_4_1_Core->GetDoublei_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
+{
+ d_4_1_Core->GetFloati_v(target, index, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
+{
+ d_4_1_Core->DepthRangeIndexed(index, n, f);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
+{
+ d_4_1_Core->DepthRangeArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glScissorIndexedv(GLuint index, const GLint *v)
+{
+ d_4_1_Core->ScissorIndexedv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
+{
+ d_4_1_Core->ScissorIndexed(index, left, bottom, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
+{
+ d_4_1_Core->ScissorArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glViewportIndexedfv(GLuint index, const GLfloat *v)
+{
+ d_4_1_Core->ViewportIndexedfv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
+{
+ d_4_1_Core->ViewportIndexedf(index, x, y, w, h);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
+{
+ d_4_1_Core->ViewportArrayv(first, count, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
+{
+ d_4_1_Core->GetVertexAttribLdv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
+{
+ d_4_1_Core->VertexAttribLPointer(index, size, type, stride, pointer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribL4dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL4dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribL3dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL3dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribL2dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL2dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribL1dv(GLuint index, const GLdouble *v)
+{
+ d_4_1_Core->VertexAttribL1dv(index, v);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+ d_4_1_Core->VertexAttribL4d(index, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+ d_4_1_Core->VertexAttribL3d(index, x, y, z);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
+{
+ d_4_1_Core->VertexAttribL2d(index, x, y);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribL1d(GLuint index, GLdouble x)
+{
+ d_4_1_Core->VertexAttribL1d(index, x);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ d_4_1_Core->GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glValidateProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->ValidateProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2dv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix4fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix3fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniformMatrix2fv(program, location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform4uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ d_4_1_Core->ProgramUniform4ui(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform4dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
+{
+ d_4_1_Core->ProgramUniform4d(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform4fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ d_4_1_Core->ProgramUniform4f(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform4iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ d_4_1_Core->ProgramUniform4i(program, location, v0, v1, v2, v3);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform3uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ d_4_1_Core->ProgramUniform3ui(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform3dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
+{
+ d_4_1_Core->ProgramUniform3d(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform3fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ d_4_1_Core->ProgramUniform3f(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform3iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ d_4_1_Core->ProgramUniform3i(program, location, v0, v1, v2);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform2uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
+{
+ d_4_1_Core->ProgramUniform2ui(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform2dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
+{
+ d_4_1_Core->ProgramUniform2d(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform2fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
+{
+ d_4_1_Core->ProgramUniform2f(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform2iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
+{
+ d_4_1_Core->ProgramUniform2i(program, location, v0, v1);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
+{
+ d_4_1_Core->ProgramUniform1uiv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
+{
+ d_4_1_Core->ProgramUniform1ui(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
+{
+ d_4_1_Core->ProgramUniform1dv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
+{
+ d_4_1_Core->ProgramUniform1d(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
+{
+ d_4_1_Core->ProgramUniform1fv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
+{
+ d_4_1_Core->ProgramUniform1f(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
+{
+ d_4_1_Core->ProgramUniform1iv(program, location, count, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramUniform1i(GLuint program, GLint location, GLint v0)
+{
+ d_4_1_Core->ProgramUniform1i(program, location, v0);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
+{
+ d_4_1_Core->GetProgramPipelineiv(pipeline, pname, params);
+}
+
+inline GLboolean QOpenGLFunctions_4_3_Core::glIsProgramPipeline(GLuint pipeline)
+{
+ return d_4_1_Core->IsProgramPipeline(pipeline);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
+{
+ d_4_1_Core->GenProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
+{
+ d_4_1_Core->DeleteProgramPipelines(n, pipelines);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindProgramPipeline(GLuint pipeline)
+{
+ d_4_1_Core->BindProgramPipeline(pipeline);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Core::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings)
+{
+ return d_4_1_Core->CreateShaderProgramv(type, count, strings);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glActiveShaderProgram(GLuint pipeline, GLuint program)
+{
+ d_4_1_Core->ActiveShaderProgram(pipeline, program);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
+{
+ d_4_1_Core->UseProgramStages(pipeline, stages, program);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ d_4_1_Core->ProgramParameteri(program, pname, value);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ProgramBinary(program, binaryFormat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
+{
+ d_4_1_Core->GetProgramBinary(program, bufSize, length, binaryFormat, binary);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearDepthf(GLfloat dd)
+{
+ d_4_1_Core->ClearDepthf(dd);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDepthRangef(GLfloat n, GLfloat f)
+{
+ d_4_1_Core->DepthRangef(n, f);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
+{
+ d_4_1_Core->GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
+{
+ d_4_1_Core->ShaderBinary(count, shaders, binaryformat, binary, length);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glReleaseShaderCompiler()
+{
+ d_4_1_Core->ReleaseShaderCompiler();
+}
+
+
+// OpenGL 4.2 core functions
+inline void QOpenGLFunctions_4_3_Core::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
+{
+ d_4_2_Core->TexStorage3D(target, levels, internalformat, width, height, depth);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ d_4_2_Core->TexStorage2D(target, levels, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
+{
+ d_4_2_Core->TexStorage1D(target, levels, internalformat, width);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMemoryBarrier(GLbitfield barriers)
+{
+ d_4_2_Core->MemoryBarrier(barriers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
+{
+ d_4_2_Core->BindImageTexture(unit, texture, level, layered, layer, access, format);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
+{
+ d_4_2_Core->GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
+{
+ d_4_2_Core->GetInternalformativ(target, internalformat, pname, bufSize, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
+{
+ d_4_2_Core->DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
+{
+ d_4_2_Core->DrawTransformFeedbackInstanced(mode, id, instancecount);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
+{
+ d_4_2_Core->DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
+{
+ d_4_2_Core->DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
+{
+ d_4_2_Core->DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
+}
+
+
+// OpenGL 4.3 core functions
+inline void QOpenGLFunctions_4_3_Core::glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
+{
+ d_4_3_Core->TexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
+{
+ d_4_3_Core->TexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ d_4_3_Core->TexBufferRange(target, internalformat, buffer, offset, size);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding)
+{
+ d_4_3_Core->ShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);
+}
+
+inline GLint QOpenGLFunctions_4_3_Core::glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)
+{
+ return d_4_3_Core->GetProgramResourceLocationIndex(program, programInterface, name);
+}
+
+inline GLint QOpenGLFunctions_4_3_Core::glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)
+{
+ return d_4_3_Core->GetProgramResourceLocation(program, programInterface, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params)
+{
+ d_4_3_Core->GetProgramResourceiv(program, programInterface, index, propCount, props, bufSize, length, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)
+{
+ d_4_3_Core->GetProgramResourceName(program, programInterface, index, bufSize, length, name);
+}
+
+inline GLuint QOpenGLFunctions_4_3_Core::glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)
+{
+ return d_4_3_Core->GetProgramResourceIndex(program, programInterface, name);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params)
+{
+ d_4_3_Core->GetProgramInterfaceiv(program, programInterface, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride)
+{
+ d_4_3_Core->MultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride)
+{
+ d_4_3_Core->MultiDrawArraysIndirect(mode, indirect, drawcount, stride);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ d_4_3_Core->InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments)
+{
+ d_4_3_Core->InvalidateFramebuffer(target, numAttachments, attachments);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glInvalidateBufferData(GLuint buffer)
+{
+ d_4_3_Core->InvalidateBufferData(buffer);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length)
+{
+ d_4_3_Core->InvalidateBufferSubData(buffer, offset, length);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glInvalidateTexImage(GLuint texture, GLint level)
+{
+ d_4_3_Core->InvalidateTexImage(texture, level);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth)
+{
+ d_4_3_Core->InvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params)
+{
+ d_4_3_Core->GetInternalformati64v(target, internalformat, pname, bufSize, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ d_4_3_Core->GetFramebufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glFramebufferParameteri(GLenum target, GLenum pname, GLint param)
+{
+ d_4_3_Core->FramebufferParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)
+{
+ d_4_3_Core->VertexBindingDivisor(bindingindex, divisor);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)
+{
+ d_4_3_Core->VertexAttribBinding(attribindex, bindingindex);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
+{
+ d_4_3_Core->VertexAttribLFormat(attribindex, size, type, relativeoffset);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
+{
+ d_4_3_Core->VertexAttribIFormat(attribindex, size, type, relativeoffset);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
+{
+ d_4_3_Core->VertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)
+{
+ d_4_3_Core->BindVertexBuffer(bindingindex, buffer, offset, stride);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers)
+{
+ d_4_3_Core->TextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth)
+{
+ d_4_3_Core->CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDispatchComputeIndirect(GLintptr indirect)
+{
+ d_4_3_Core->DispatchComputeIndirect(indirect);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
+{
+ d_4_3_Core->DispatchCompute(num_groups_x, num_groups_y, num_groups_z);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)
+{
+ d_4_3_Core->ClearBufferSubData(target, internalformat, offset, size, format, type, data);
+}
+
+inline void QOpenGLFunctions_4_3_Core::glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data)
+{
+ d_4_3_Core->ClearBufferData(target, internalformat, format, type, data);
+}
+
+
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglfunctions_es2.cpp b/src/gui/opengl/qopenglfunctions_es2.cpp
new file mode 100644
index 0000000000..afac017d53
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_es2.cpp
@@ -0,0 +1,103 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "qopenglfunctions_es2.h"
+#include "qopenglcontext.h"
+
+QT_BEGIN_NAMESPACE
+
+/*!
+ \class QOpenGLFunctions_ES2
+ \inmodule QtGui
+ \since 5.1
+ \brief The QOpenGLFunctions_ES2 class provides all functions for OpenGL ES 2
+
+ \sa QAbstractOpenGLFunctions
+*/
+
+QOpenGLFunctions_ES2::QOpenGLFunctions_ES2()
+ : QAbstractOpenGLFunctions()
+ , d_es2(0)
+{
+}
+
+QOpenGLFunctions_ES2::~QOpenGLFunctions_ES2()
+{
+}
+
+bool QOpenGLFunctions_ES2::initializeOpenGLFunctions()
+{
+ if ( isInitialized() )
+ return true;
+
+ QOpenGLContext* context = QOpenGLContext::currentContext();
+
+ // If owned by a context object make sure it is current.
+ // Also check that current context is compatible
+ if (((owningContext() && owningContext() == context) || !owningContext())
+ && QOpenGLFunctions_ES2::isContextCompatible(context))
+ {
+ // Nothing to do, just flag that we are initialized
+ QAbstractOpenGLFunctions::initializeOpenGLFunctions();
+ }
+ return isInitialized();
+}
+
+bool QOpenGLFunctions_ES2::isContextCompatible(QOpenGLContext *context)
+{
+ Q_ASSERT(context);
+ QSurfaceFormat f = context->format();
+ const QPair<int, int> v = qMakePair(f.majorVersion(), f.minorVersion());
+ if (v < qMakePair(2, 0))
+ return false;
+ if (f.renderableType() != QSurfaceFormat::OpenGLES)
+ return false;
+
+ return true;
+}
+
+QOpenGLVersionProfile QOpenGLFunctions_ES2::versionProfile()
+{
+ QOpenGLVersionProfile v;
+ return v;
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglfunctions_es2.h b/src/gui/opengl/qopenglfunctions_es2.h
new file mode 100644
index 0000000000..9c14567723
--- /dev/null
+++ b/src/gui/opengl/qopenglfunctions_es2.h
@@ -0,0 +1,933 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_ES2_H
+#define QOPENGLVERSIONFUNCTIONS_ES2_H
+
+#include <QtCore/qglobal.h>
+
+#if defined(QT_OPENGL_ES_2)
+
+#include <QtGui/QOpenGLVersionFunctions>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class QOpenGLFunctions_ES2Private;
+
+class Q_GUI_EXPORT QOpenGLFunctions_ES2 : public QAbstractOpenGLFunctions
+{
+public:
+ QOpenGLFunctions_ES2();
+ ~QOpenGLFunctions_ES2();
+
+ bool initializeOpenGLFunctions() Q_DECL_OVERRIDE;
+
+ // OpenGL ES2 core functions
+ void glActiveTexture(GLenum texture);
+ void glAttachShader(GLuint program, GLuint shader);
+ void glBindAttribLocation(GLuint program, GLuint index, const GLchar* name);
+ void glBindBuffer(GLenum target, GLuint buffer);
+ void glBindFramebuffer(GLenum target, GLuint framebuffer);
+ void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
+ void glBindTexture(GLenum target, GLuint texture);
+ void glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+ void glBlendEquation(GLenum mode);
+ void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+ void glBlendFunc(GLenum sfactor, GLenum dfactor);
+ void glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
+ void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
+ GLenum glCheckFramebufferStatus(GLenum target);
+ void glClear(GLbitfield mask);
+ void glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+ void glClearDepthf(GLclampf depth);
+ void glClearStencil(GLint s);
+ void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void glCompileShader(GLuint shader);
+ void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
+ void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
+ void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ GLuint glCreateProgram(void);
+ GLuint glCreateShader(GLenum type);
+ void glCullFace(GLenum mode);
+ void glDeleteBuffers(GLsizei n, const GLuint* buffers);
+ void glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers);
+ void glDeleteProgram(GLuint program);
+ void glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers);
+ void glDeleteShader(GLuint shader);
+ void glDeleteTextures(GLsizei n, const GLuint* textures);
+ void glDepthFunc(GLenum func);
+ void glDepthMask(GLboolean flag);
+ void glDepthRangef(GLclampf zNear, GLclampf zFar);
+ void glDetachShader(GLuint program, GLuint shader);
+ void glDisable(GLenum cap);
+ void glDisableVertexAttribArray(GLuint index);
+ void glDrawArrays(GLenum mode, GLint first, GLsizei count);
+ void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
+ void glEnable(GLenum cap);
+ void glEnableVertexAttribArray(GLuint index);
+ void glFinish(void);
+ void glFlush(void);
+ void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void glFrontFace(GLenum mode);
+ void glGenBuffers(GLsizei n, GLuint* buffers);
+ void glGenerateMipmap(GLenum target);
+ void glGenFramebuffers(GLsizei n, GLuint* framebuffers);
+ void glGenRenderbuffers(GLsizei n, GLuint* renderbuffers);
+ void glGenTextures(GLsizei n, GLuint* textures);
+ void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
+ void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
+ void glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
+ int glGetAttribLocation(GLuint program, const GLchar* name);
+ void glGetBooleanv(GLenum pname, GLboolean* params);
+ void glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params);
+ GLenum glGetError(void);
+ void glGetFloatv(GLenum pname, GLfloat* params);
+ void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params);
+ void glGetIntegerv(GLenum pname, GLint* params);
+ void glGetProgramiv(GLuint program, GLenum pname, GLint* params);
+ void glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
+ void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params);
+ void glGetShaderiv(GLuint shader, GLenum pname, GLint* params);
+ void glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
+ void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
+ void glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
+ const GLubyte* glGetString(GLenum name);
+ void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params);
+ void glGetTexParameteriv(GLenum target, GLenum pname, GLint* params);
+ void glGetUniformfv(GLuint program, GLint location, GLfloat* params);
+ void glGetUniformiv(GLuint program, GLint location, GLint* params);
+ int glGetUniformLocation(GLuint program, const GLchar* name);
+ void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params);
+ void glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params);
+ void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer);
+ void glHint(GLenum target, GLenum mode);
+ GLboolean glIsBuffer(GLuint buffer);
+ GLboolean glIsEnabled(GLenum cap);
+ GLboolean glIsFramebuffer(GLuint framebuffer);
+ GLboolean glIsProgram(GLuint program);
+ GLboolean glIsRenderbuffer(GLuint renderbuffer);
+ GLboolean glIsShader(GLuint shader);
+ GLboolean glIsTexture(GLuint texture);
+ void glLineWidth(GLfloat width);
+ void glLinkProgram(GLuint program);
+ void glPixelStorei(GLenum pname, GLint param);
+ void glPolygonOffset(GLfloat factor, GLfloat units);
+ void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
+ void glReleaseShaderCompiler(void);
+ void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void glSampleCoverage(GLclampf value, GLboolean invert);
+ void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ void glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
+ void glShaderSource(GLuint shader, GLsizei count, const GLchar* *string, const GLint* length);
+ void glStencilFunc(GLenum func, GLint ref, GLuint mask);
+ void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void glStencilMask(GLuint mask);
+ void glStencilMaskSeparate(GLenum face, GLuint mask);
+ void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ void glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
+ void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
+ void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
+ void glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params);
+ void glTexParameteri(GLenum target, GLenum pname, GLint param);
+ void glTexParameteriv(GLenum target, GLenum pname, const GLint* params);
+ void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
+ void glUniform1f(GLint location, GLfloat x);
+ void glUniform1fv(GLint location, GLsizei count, const GLfloat* v);
+ void glUniform1i(GLint location, GLint x);
+ void glUniform1iv(GLint location, GLsizei count, const GLint* v);
+ void glUniform2f(GLint location, GLfloat x, GLfloat y);
+ void glUniform2fv(GLint location, GLsizei count, const GLfloat* v);
+ void glUniform2i(GLint location, GLint x, GLint y);
+ void glUniform2iv(GLint location, GLsizei count, const GLint* v);
+ void glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z);
+ void glUniform3fv(GLint location, GLsizei count, const GLfloat* v);
+ void glUniform3i(GLint location, GLint x, GLint y, GLint z);
+ void glUniform3iv(GLint location, GLsizei count, const GLint* v);
+ void glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glUniform4fv(GLint location, GLsizei count, const GLfloat* v);
+ void glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w);
+ void glUniform4iv(GLint location, GLsizei count, const GLint* v);
+ void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+ void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+ void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+ void glUseProgram(GLuint program);
+ void glValidateProgram(GLuint program);
+ void glVertexAttrib1f(GLuint indx, GLfloat x);
+ void glVertexAttrib1fv(GLuint indx, const GLfloat* values);
+ void glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y);
+ void glVertexAttrib2fv(GLuint indx, const GLfloat* values);
+ void glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z);
+ void glVertexAttrib3fv(GLuint indx, const GLfloat* values);
+ void glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void glVertexAttrib4fv(GLuint indx, const GLfloat* values);
+ void glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
+ void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
+
+private:
+ friend class QOpenGLContext;
+
+ static bool isContextCompatible(QOpenGLContext *context);
+ static QOpenGLVersionProfile versionProfile();
+
+ // For future expansion - not used
+ QOpenGLFunctions_ES2Private* d_es2;
+};
+
+// OpenGL ES2 core functions
+inline void QOpenGLFunctions_ES2::glActiveTexture(GLenum texture)
+{
+ ::glActiveTexture(texture);
+}
+
+inline void QOpenGLFunctions_ES2::glAttachShader(GLuint program, GLuint shader)
+{
+ ::glAttachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_ES2::glBindAttribLocation(GLuint program, GLuint index, const GLchar* name)
+{
+ ::glBindAttribLocation(program, index, name);
+}
+
+inline void QOpenGLFunctions_ES2::glBindBuffer(GLenum target, GLuint buffer)
+{
+ ::glBindBuffer(target, buffer);
+}
+
+inline void QOpenGLFunctions_ES2::glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ ::glBindFramebuffer(target, framebuffer);
+}
+
+inline void QOpenGLFunctions_ES2::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ ::glBindRenderbuffer(target, renderbuffer);
+}
+
+inline void QOpenGLFunctions_ES2::glBindTexture(GLenum target, GLuint texture)
+{
+ ::glBindTexture(target, texture);
+}
+
+inline void QOpenGLFunctions_ES2::glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ ::glBlendColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_ES2::glBlendEquation(GLenum mode)
+{
+ ::glBlendEquation(mode);
+}
+
+inline void QOpenGLFunctions_ES2::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ ::glBlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+inline void QOpenGLFunctions_ES2::glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ ::glBlendFunc(sfactor, dfactor);
+}
+
+inline void QOpenGLFunctions_ES2::glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
+{
+ ::glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
+}
+
+inline void QOpenGLFunctions_ES2::glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage)
+{
+ ::glBufferData(target, size, data, usage);
+}
+
+inline void QOpenGLFunctions_ES2::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data)
+{
+ ::glBufferSubData(target, offset, size, data);
+}
+
+inline GLenum QOpenGLFunctions_ES2::glCheckFramebufferStatus(GLenum target)
+{
+ return ::glCheckFramebufferStatus(target);
+}
+
+inline void QOpenGLFunctions_ES2::glClear(GLbitfield mask)
+{
+ ::glClear(mask);
+}
+
+inline void QOpenGLFunctions_ES2::glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+ ::glClearColor(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_ES2::glClearDepthf(GLclampf depth)
+{
+ ::glClearDepthf(depth);
+}
+
+inline void QOpenGLFunctions_ES2::glClearStencil(GLint s)
+{
+ ::glClearStencil(s);
+}
+
+inline void QOpenGLFunctions_ES2::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ ::glColorMask(red, green, blue, alpha);
+}
+
+inline void QOpenGLFunctions_ES2::glCompileShader(GLuint shader)
+{
+ ::glCompileShader(shader);
+}
+
+inline void QOpenGLFunctions_ES2::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data)
+{
+ ::glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
+}
+
+inline void QOpenGLFunctions_ES2::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data)
+{
+ ::glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
+}
+
+inline void QOpenGLFunctions_ES2::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+ ::glCopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+inline void QOpenGLFunctions_ES2::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ ::glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+inline GLuint QOpenGLFunctions_ES2::glCreateProgram(void)
+{
+ return ::glCreateProgram();
+}
+
+inline GLuint QOpenGLFunctions_ES2::glCreateShader(GLenum type)
+{
+ return ::glCreateShader(type);
+}
+
+inline void QOpenGLFunctions_ES2::glCullFace(GLenum mode)
+{
+ ::glCullFace(mode);
+}
+
+inline void QOpenGLFunctions_ES2::glDeleteBuffers(GLsizei n, const GLuint* buffers)
+{
+ ::glDeleteBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_ES2::glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers)
+{
+ ::glDeleteFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_ES2::glDeleteProgram(GLuint program)
+{
+ ::glDeleteProgram(program);
+}
+
+inline void QOpenGLFunctions_ES2::glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers)
+{
+ ::glDeleteRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_ES2::glDeleteShader(GLuint shader)
+{
+ ::glDeleteShader(shader);
+}
+
+inline void QOpenGLFunctions_ES2::glDeleteTextures(GLsizei n, const GLuint* textures)
+{
+ ::glDeleteTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_ES2::glDepthFunc(GLenum func)
+{
+ ::glDepthFunc(func);
+}
+
+inline void QOpenGLFunctions_ES2::glDepthMask(GLboolean flag)
+{
+ ::glDepthMask(flag);
+}
+
+inline void QOpenGLFunctions_ES2::glDepthRangef(GLclampf zNear, GLclampf zFar)
+{
+ ::glDepthRangef(zNear, zFar);
+}
+
+inline void QOpenGLFunctions_ES2::glDetachShader(GLuint program, GLuint shader)
+{
+ ::glDetachShader(program, shader);
+}
+
+inline void QOpenGLFunctions_ES2::glDisable(GLenum cap)
+{
+ ::glDisable(cap);
+}
+
+inline void QOpenGLFunctions_ES2::glDisableVertexAttribArray(GLuint index)
+{
+ ::glDisableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_ES2::glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ ::glDrawArrays(mode, first, count);
+}
+
+inline void QOpenGLFunctions_ES2::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices)
+{
+ ::glDrawElements(mode, count, type, indices);
+}
+
+inline void QOpenGLFunctions_ES2::glEnable(GLenum cap)
+{
+ ::glEnable(cap);
+}
+
+inline void QOpenGLFunctions_ES2::glEnableVertexAttribArray(GLuint index)
+{
+ ::glEnableVertexAttribArray(index);
+}
+
+inline void QOpenGLFunctions_ES2::glFinish(void)
+{
+ ::glFinish();
+}
+
+inline void QOpenGLFunctions_ES2::glFlush(void)
+{
+ ::glFlush();
+}
+
+inline void QOpenGLFunctions_ES2::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+ ::glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+inline void QOpenGLFunctions_ES2::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+ ::glFramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+inline void QOpenGLFunctions_ES2::glFrontFace(GLenum mode)
+{
+ ::glFrontFace(mode);
+}
+
+inline void QOpenGLFunctions_ES2::glGenBuffers(GLsizei n, GLuint* buffers)
+{
+ ::glGenBuffers(n, buffers);
+}
+
+inline void QOpenGLFunctions_ES2::glGenerateMipmap(GLenum target)
+{
+ ::glGenerateMipmap(target);
+}
+
+inline void QOpenGLFunctions_ES2::glGenFramebuffers(GLsizei n, GLuint* framebuffers)
+{
+ ::glGenFramebuffers(n, framebuffers);
+}
+
+inline void QOpenGLFunctions_ES2::glGenRenderbuffers(GLsizei n, GLuint* renderbuffers)
+{
+ ::glGenRenderbuffers(n, renderbuffers);
+}
+
+inline void QOpenGLFunctions_ES2::glGenTextures(GLsizei n, GLuint* textures)
+{
+ ::glGenTextures(n, textures);
+}
+
+inline void QOpenGLFunctions_ES2::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
+{
+ ::glGetActiveAttrib(program, index, bufsize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_ES2::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
+{
+ ::glGetActiveUniform(program, index, bufsize, length, size, type, name);
+}
+
+inline void QOpenGLFunctions_ES2::glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders)
+{
+ ::glGetAttachedShaders(program, maxcount, count, shaders);
+}
+
+inline int QOpenGLFunctions_ES2::glGetAttribLocation(GLuint program, const GLchar* name)
+{
+ return ::glGetAttribLocation(program, name);
+}
+
+inline void QOpenGLFunctions_ES2::glGetBooleanv(GLenum pname, GLboolean* params)
+{
+ ::glGetBooleanv(pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params)
+{
+ ::glGetBufferParameteriv(target, pname, params);
+}
+
+inline GLenum QOpenGLFunctions_ES2::glGetError(void)
+{
+ return ::glGetError();
+}
+
+inline void QOpenGLFunctions_ES2::glGetFloatv(GLenum pname, GLfloat* params)
+{
+ ::glGetFloatv(pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params)
+{
+ ::glGetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetIntegerv(GLenum pname, GLint* params)
+{
+ ::glGetIntegerv(pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetProgramiv(GLuint program, GLenum pname, GLint* params)
+{
+ ::glGetProgramiv(program, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog)
+{
+ ::glGetProgramInfoLog(program, bufsize, length, infolog);
+}
+
+inline void QOpenGLFunctions_ES2::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params)
+{
+ ::glGetRenderbufferParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetShaderiv(GLuint shader, GLenum pname, GLint* params)
+{
+ ::glGetShaderiv(shader, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog)
+{
+ ::glGetShaderInfoLog(shader, bufsize, length, infolog);
+}
+
+inline void QOpenGLFunctions_ES2::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision)
+{
+ ::glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+inline void QOpenGLFunctions_ES2::glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source)
+{
+ ::glGetShaderSource(shader, bufsize, length, source);
+}
+
+inline const GLubyte* QOpenGLFunctions_ES2::glGetString(GLenum name)
+{
+ return ::glGetString(name);
+}
+
+inline void QOpenGLFunctions_ES2::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params)
+{
+ ::glGetTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetTexParameteriv(GLenum target, GLenum pname, GLint* params)
+{
+ ::glGetTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetUniformfv(GLuint program, GLint location, GLfloat* params)
+{
+ ::glGetUniformfv(program, location, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetUniformiv(GLuint program, GLint location, GLint* params)
+{
+ ::glGetUniformiv(program, location, params);
+}
+
+inline int QOpenGLFunctions_ES2::glGetUniformLocation(GLuint program, const GLchar* name)
+{
+ return ::glGetUniformLocation(program, name);
+}
+
+inline void QOpenGLFunctions_ES2::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params)
+{
+ ::glGetVertexAttribfv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params)
+{
+ ::glGetVertexAttribiv(index, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer)
+{
+ ::glGetVertexAttribPointerv(index, pname, pointer);
+}
+
+inline void QOpenGLFunctions_ES2::glHint(GLenum target, GLenum mode)
+{
+ ::glHint(target, mode);
+}
+
+inline GLboolean QOpenGLFunctions_ES2::glIsBuffer(GLuint buffer)
+{
+ return ::glIsBuffer(buffer);
+}
+
+inline GLboolean QOpenGLFunctions_ES2::glIsEnabled(GLenum cap)
+{
+ return ::glIsEnabled(cap);
+}
+
+inline GLboolean QOpenGLFunctions_ES2::glIsFramebuffer(GLuint framebuffer)
+{
+ return ::glIsFramebuffer(framebuffer);
+}
+
+inline GLboolean QOpenGLFunctions_ES2::glIsProgram(GLuint program)
+{
+ return ::glIsProgram(program);
+}
+
+inline GLboolean QOpenGLFunctions_ES2::glIsRenderbuffer(GLuint renderbuffer)
+{
+ return ::glIsRenderbuffer(renderbuffer);
+}
+
+inline GLboolean QOpenGLFunctions_ES2::glIsShader(GLuint shader)
+{
+ return ::glIsShader(shader);
+}
+
+inline GLboolean QOpenGLFunctions_ES2::glIsTexture(GLuint texture)
+{
+ return ::glIsTexture(texture);
+}
+
+inline void QOpenGLFunctions_ES2::glLineWidth(GLfloat width)
+{
+ ::glLineWidth(width);
+}
+
+inline void QOpenGLFunctions_ES2::glLinkProgram(GLuint program)
+{
+ ::glLinkProgram(program);
+}
+
+inline void QOpenGLFunctions_ES2::glPixelStorei(GLenum pname, GLint param)
+{
+ ::glPixelStorei(pname, param);
+}
+
+inline void QOpenGLFunctions_ES2::glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ ::glPolygonOffset(factor, units);
+}
+
+inline void QOpenGLFunctions_ES2::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels)
+{
+ ::glReadPixels(x, y, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_ES2::glReleaseShaderCompiler(void)
+{
+ ::glReleaseShaderCompiler();
+}
+
+inline void QOpenGLFunctions_ES2::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ ::glRenderbufferStorage(target, internalformat, width, height);
+}
+
+inline void QOpenGLFunctions_ES2::glSampleCoverage(GLclampf value, GLboolean invert)
+{
+ ::glSampleCoverage(value, invert);
+}
+
+inline void QOpenGLFunctions_ES2::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ ::glScissor(x, y, width, height);
+}
+
+inline void QOpenGLFunctions_ES2::glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length)
+{
+ ::glShaderBinary(n, shaders, binaryformat, binary, length);
+}
+
+inline void QOpenGLFunctions_ES2::glShaderSource(GLuint shader, GLsizei count, const GLchar* *string, const GLint* length)
+{
+ ::glShaderSource(shader, count, string, length);
+}
+
+inline void QOpenGLFunctions_ES2::glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ ::glStencilFunc(func, ref, mask);
+}
+
+inline void QOpenGLFunctions_ES2::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ ::glStencilFuncSeparate(face, func, ref, mask);
+}
+
+inline void QOpenGLFunctions_ES2::glStencilMask(GLuint mask)
+{
+ ::glStencilMask(mask);
+}
+
+inline void QOpenGLFunctions_ES2::glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ ::glStencilMaskSeparate(face, mask);
+}
+
+inline void QOpenGLFunctions_ES2::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ ::glStencilOp(fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_ES2::glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass)
+{
+ ::glStencilOpSeparate(face, fail, zfail, zpass);
+}
+
+inline void QOpenGLFunctions_ES2::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels)
+{
+ ::glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_ES2::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ ::glTexParameterf(target, pname, param);
+}
+
+inline void QOpenGLFunctions_ES2::glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params)
+{
+ ::glTexParameterfv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ ::glTexParameteri(target, pname, param);
+}
+
+inline void QOpenGLFunctions_ES2::glTexParameteriv(GLenum target, GLenum pname, const GLint* params)
+{
+ ::glTexParameteriv(target, pname, params);
+}
+
+inline void QOpenGLFunctions_ES2::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels)
+{
+ ::glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform1f(GLint location, GLfloat x)
+{
+ ::glUniform1f(location, x);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform1fv(GLint location, GLsizei count, const GLfloat* v)
+{
+ ::glUniform1fv(location, count, v);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform1i(GLint location, GLint x)
+{
+ ::glUniform1i(location, x);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform1iv(GLint location, GLsizei count, const GLint* v)
+{
+ ::glUniform1iv(location, count, v);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform2f(GLint location, GLfloat x, GLfloat y)
+{
+ ::glUniform2f(location, x, y);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform2fv(GLint location, GLsizei count, const GLfloat* v)
+{
+ ::glUniform2fv(location, count, v);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform2i(GLint location, GLint x, GLint y)
+{
+ ::glUniform2i(location, x, y);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform2iv(GLint location, GLsizei count, const GLint* v)
+{
+ ::glUniform2iv(location, count, v);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z)
+{
+ ::glUniform3f(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform3fv(GLint location, GLsizei count, const GLfloat* v)
+{
+ ::glUniform3fv(location, count, v);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform3i(GLint location, GLint x, GLint y, GLint z)
+{
+ ::glUniform3i(location, x, y, z);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform3iv(GLint location, GLsizei count, const GLint* v)
+{
+ ::glUniform3iv(location, count, v);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ ::glUniform4f(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform4fv(GLint location, GLsizei count, const GLfloat* v)
+{
+ ::glUniform4fv(location, count, v);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w)
+{
+ ::glUniform4i(location, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_ES2::glUniform4iv(GLint location, GLsizei count, const GLint* v)
+{
+ ::glUniform4iv(location, count, v);
+}
+
+inline void QOpenGLFunctions_ES2::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
+{
+ ::glUniformMatrix2fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_ES2::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
+{
+ ::glUniformMatrix3fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_ES2::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
+{
+ ::glUniformMatrix4fv(location, count, transpose, value);
+}
+
+inline void QOpenGLFunctions_ES2::glUseProgram(GLuint program)
+{
+ ::glUseProgram(program);
+}
+
+inline void QOpenGLFunctions_ES2::glValidateProgram(GLuint program)
+{
+ ::glValidateProgram(program);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttrib1f(GLuint indx, GLfloat x)
+{
+ ::glVertexAttrib1f(indx, x);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttrib1fv(GLuint indx, const GLfloat* values)
+{
+ ::glVertexAttrib1fv(indx, values);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y)
+{
+ ::glVertexAttrib2f(indx, x, y);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttrib2fv(GLuint indx, const GLfloat* values)
+{
+ ::glVertexAttrib2fv(indx, values);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z)
+{
+ ::glVertexAttrib3f(indx, x, y, z);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttrib3fv(GLuint indx, const GLfloat* values)
+{
+ ::glVertexAttrib3fv(indx, values);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ ::glVertexAttrib4f(indx, x, y, z, w);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttrib4fv(GLuint indx, const GLfloat* values)
+{
+ ::glVertexAttrib4fv(indx, values);
+}
+
+inline void QOpenGLFunctions_ES2::glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr)
+{
+ ::glVertexAttribPointer(indx, size, type, normalized, stride, ptr);
+}
+
+inline void QOpenGLFunctions_ES2::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ ::glViewport(x, y, width, height);
+}
+
+QT_END_NAMESPACE
+
+#endif // QT_OPENGL_ES_2
+
+#endif
diff --git a/src/gui/opengl/qopenglpaintdevice.cpp b/src/gui/opengl/qopenglpaintdevice.cpp
index 0b3d9dc46d..d55d6a91bf 100644
--- a/src/gui/opengl/qopenglpaintdevice.cpp
+++ b/src/gui/opengl/qopenglpaintdevice.cpp
@@ -116,6 +116,7 @@ public:
qreal dpmx;
qreal dpmy;
+ qreal devicePixelRatio;
bool flipped;
@@ -178,6 +179,7 @@ QOpenGLPaintDevicePrivate::QOpenGLPaintDevicePrivate(const QSize &sz)
, ctx(QOpenGLContext::currentContext())
, dpmx(qt_defaultDpiX() * 100. / 2.54)
, dpmy(qt_defaultDpiY() * 100. / 2.54)
+ , devicePixelRatio(1.0)
, flipped(false)
, engine(0)
{
@@ -249,6 +251,14 @@ void QOpenGLPaintDevice::setSize(const QSize &size)
}
/*!
+ Sets the device pixel ratio for the paint device to \a devicePixelRatio.
+*/
+void QOpenGLPaintDevice::setDevicePixelRatio(qreal devicePixelRatio)
+{
+ d_ptr->devicePixelRatio = devicePixelRatio;
+}
+
+/*!
\reimp
*/
@@ -272,9 +282,9 @@ int QOpenGLPaintDevice::metric(QPaintDevice::PaintDeviceMetric metric) const
case PdmDpiY:
return qRound(d_ptr->dpmy * 0.0254);
case PdmPhysicalDpiX:
- return qRound(d_ptr->dpmx * 0.0254);
+ return qRound(d_ptr->dpmx * 0.0254 * d_ptr->devicePixelRatio);
case PdmPhysicalDpiY:
- return qRound(d_ptr->dpmy * 0.0254);
+ return qRound(d_ptr->dpmy * 0.0254 * d_ptr->devicePixelRatio);
default:
qWarning("QOpenGLPaintDevice::metric() - metric %d not known", metric);
return 0;
diff --git a/src/gui/opengl/qopenglpaintdevice.h b/src/gui/opengl/qopenglpaintdevice.h
index 66850c73fc..5868a5740a 100644
--- a/src/gui/opengl/qopenglpaintdevice.h
+++ b/src/gui/opengl/qopenglpaintdevice.h
@@ -48,8 +48,6 @@
#include <QtGui/qopengl.h>
#include <QtGui/qopenglcontext.h>
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -70,6 +68,7 @@ public:
QOpenGLContext *context() const;
QSize size() const;
void setSize(const QSize &size);
+ void setDevicePixelRatio(qreal devicePixelRatio);
qreal dotsPerMeterX() const;
qreal dotsPerMeterY() const;
@@ -91,8 +90,6 @@ protected:
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif // QT_NO_OPENGL
#endif // QOPENGLPAINTDEVICE_H
diff --git a/src/gui/opengl/qopenglpaintengine.cpp b/src/gui/opengl/qopenglpaintengine.cpp
index 9fd8a7ada7..555c47f265 100644
--- a/src/gui/opengl/qopenglpaintengine.cpp
+++ b/src/gui/opengl/qopenglpaintengine.cpp
@@ -624,7 +624,7 @@ void QOpenGL2PaintEngineExPrivate::transferMode(EngineMode newMode)
if (newMode == mode)
return;
- if (mode == TextDrawingMode || mode == ImageDrawingMode || mode == ImageArrayDrawingMode) {
+ if (mode != BrushDrawingMode) {
lastTextureUsed = GLuint(-1);
}
@@ -639,10 +639,12 @@ void QOpenGL2PaintEngineExPrivate::transferMode(EngineMode newMode)
setVertexAttributePointer(QT_TEXTURE_COORDS_ATTR, staticTextureCoordinateArray);
}
- if (newMode == ImageArrayDrawingMode) {
+ if (newMode == ImageArrayDrawingMode || newMode == ImageOpacityArrayDrawingMode) {
setVertexAttributePointer(QT_VERTEX_COORDS_ATTR, (GLfloat*)vertexCoordinateArray.data());
setVertexAttributePointer(QT_TEXTURE_COORDS_ATTR, (GLfloat*)textureCoordinateArray.data());
- setVertexAttributePointer(QT_OPACITY_ATTR, (GLfloat*)opacityArray.data());
+
+ if (newMode == ImageOpacityArrayDrawingMode)
+ setVertexAttributePointer(QT_OPACITY_ATTR, (GLfloat*)opacityArray.data());
}
// This needs to change when we implement high-quality anti-aliasing...
@@ -1069,9 +1071,23 @@ void QOpenGL2PaintEngineExPrivate::resetClipIfNeeded()
glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
}
+bool QOpenGL2PaintEngineExPrivate::prepareForCachedGlyphDraw(const QFontEngineGlyphCache &cache)
+{
+ Q_Q(QOpenGL2PaintEngineEx);
+
+ Q_ASSERT(cache.transform().type() <= QTransform::TxScale);
+
+ QTransform &transform = q->state()->matrix;
+ transform.scale(1.0 / cache.transform().m11(), 1.0 / cache.transform().m22());
+ bool ret = prepareForDraw(false);
+ transform.scale(cache.transform().m11(), cache.transform().m22());
+
+ return ret;
+}
+
bool QOpenGL2PaintEngineExPrivate::prepareForDraw(bool srcPixelsAreOpaque)
{
- if (brushTextureDirty && mode != ImageDrawingMode && mode != ImageArrayDrawingMode)
+ if (brushTextureDirty && (mode == TextDrawingMode || mode == BrushDrawingMode))
updateBrushTexture();
if (compositionModeDirty)
@@ -1091,12 +1107,12 @@ bool QOpenGL2PaintEngineExPrivate::prepareForDraw(bool srcPixelsAreOpaque)
}
QOpenGLEngineShaderManager::OpacityMode opacityMode;
- if (mode == ImageArrayDrawingMode) {
+ if (mode == ImageOpacityArrayDrawingMode) {
opacityMode = QOpenGLEngineShaderManager::AttributeOpacity;
} else {
opacityMode = stateHasOpacity ? QOpenGLEngineShaderManager::UniformOpacity
: QOpenGLEngineShaderManager::NoOpacity;
- if (stateHasOpacity && (mode != ImageDrawingMode)) {
+ if (stateHasOpacity && (mode != ImageDrawingMode && mode != ImageArrayDrawingMode)) {
// Using a brush
bool brushIsPattern = (currentBrush.style() >= Qt::Dense1Pattern) &&
(currentBrush.style() <= Qt::DiagCrossPattern);
@@ -1116,7 +1132,7 @@ bool QOpenGL2PaintEngineExPrivate::prepareForDraw(bool srcPixelsAreOpaque)
matrixUniformDirty = true;
}
- if (brushUniformsDirty && mode != ImageDrawingMode && mode != ImageArrayDrawingMode)
+ if (brushUniformsDirty && (mode == TextDrawingMode || mode == BrushDrawingMode))
updateBrushUniforms();
if (opacityMode == QOpenGLEngineShaderManager::UniformOpacity && opacityUniformDirty) {
@@ -1407,11 +1423,9 @@ void QOpenGL2PaintEngineEx::drawStaticTextItem(QStaticTextItem *textItem)
ensureActive();
QPainterState *s = state();
- float det = s->matrix.determinant();
- // don't try to cache huge fonts or vastly transformed fonts
QFontEngine *fontEngine = textItem->fontEngine();
- if (shouldDrawCachedGlyphs(fontEngine, s->matrix) && det >= 0.25f && det <= 4.f) {
+ if (shouldDrawCachedGlyphs(fontEngine, s->matrix)) {
QFontEngineGlyphCache::Type glyphType = fontEngine->glyphFormat >= 0
? QFontEngineGlyphCache::Type(textItem->fontEngine()->glyphFormat)
: d->glyphCacheType;
@@ -1461,13 +1475,6 @@ void QOpenGL2PaintEngineEx::drawTextItem(const QPointF &p, const QTextItem &text
QTransform::TransformationType txtype = s->matrix.type();
- float det = s->matrix.determinant();
- bool drawCached = txtype < QTransform::TxProject;
-
- // don't try to cache huge fonts or vastly transformed fonts
- if (!shouldDrawCachedGlyphs(ti.fontEngine, s->matrix) || det < 0.25f || det > 4.f)
- drawCached = false;
-
QFontEngineGlyphCache::Type glyphType = ti.fontEngine->glyphFormat >= 0
? QFontEngineGlyphCache::Type(ti.fontEngine->glyphFormat)
: d->glyphCacheType;
@@ -1482,7 +1489,7 @@ void QOpenGL2PaintEngineEx::drawTextItem(const QPointF &p, const QTextItem &text
}
}
- if (drawCached) {
+ if (shouldDrawCachedGlyphs(ti.fontEngine, s->matrix)) {
QVarLengthArray<QFixedPoint> positions;
QVarLengthArray<glyph_t> glyphs;
QTransform matrix = QTransform::fromTranslate(p.x(), p.y());
@@ -1531,6 +1538,12 @@ namespace {
// #define QT_OPENGL_DRAWCACHEDGLYPHS_INDEX_ARRAY_VBO
+bool QOpenGL2PaintEngineEx::shouldDrawCachedGlyphs(QFontEngine *fontEngine, const QTransform &t) const
+{
+ // Don't try to cache vastly transformed fonts
+ return t.type() < QTransform::TxProject && QPaintEngineEx::shouldDrawCachedGlyphs(fontEngine, t);
+}
+
void QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type glyphType,
QStaticTextItem *staticTextItem)
{
@@ -1542,10 +1555,18 @@ void QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type
bool recreateVertexArrays = false;
QFontEngine *fe = staticTextItem->fontEngine();
+ // We allow scaling, so that the glyph-cache will contain glyphs with the
+ // appropriate resolution in the case of displays with a device-pixel-ratio != 1.
+ QTransform transform = s->matrix.type() < QTransform::TxRotate ?
+ QTransform::fromScale(qAbs(s->matrix.m11()), qAbs(s->matrix.m22())) :
+ QTransform::fromScale(
+ QVector2D(s->matrix.m11(), s->matrix.m12()).length(),
+ QVector2D(s->matrix.m21(), s->matrix.m22()).length());
+
QOpenGLTextureGlyphCache *cache =
- (QOpenGLTextureGlyphCache *) fe->glyphCache(cacheKey, glyphType, QTransform());
+ (QOpenGLTextureGlyphCache *) fe->glyphCache(cacheKey, glyphType, transform);
if (!cache || cache->cacheType() != glyphType || cache->contextGroup() == 0) {
- cache = new QOpenGLTextureGlyphCache(glyphType, QTransform());
+ cache = new QOpenGLTextureGlyphCache(glyphType, transform);
fe->setGlyphCache(cacheKey, cache);
recreateVertexArrays = true;
}
@@ -1583,7 +1604,10 @@ void QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type
if (cache->width() == 0 || cache->height() == 0)
return;
- transferMode(TextDrawingMode);
+ if (glyphType == QFontEngineGlyphCache::Raster_ARGB)
+ transferMode(ImageArrayDrawingMode);
+ else
+ transferMode(TextDrawingMode);
int margin = fe->glyphMargin(glyphType);
@@ -1637,8 +1661,8 @@ void QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type
if (c.isNull())
continue;
- int x = qFloor(staticTextItem->glyphPositions[i].x) + c.baseLineX - margin;
- int y = qRound(staticTextItem->glyphPositions[i].y) - c.baseLineY - margin;
+ int x = qFloor(staticTextItem->glyphPositions[i].x.toReal() * cache->transform().m11()) + c.baseLineX - margin;
+ int y = qRound(staticTextItem->glyphPositions[i].y.toReal() * cache->transform().m22()) - c.baseLineY - margin;
vertexCoordinates->addQuad(QRectF(x, y, c.w, c.h));
textureCoordinates->addQuad(QRectF(c.x*dx, c.y*dy, c.w * dx, c.h * dy));
@@ -1679,8 +1703,10 @@ void QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type
#endif
}
- setVertexAttributePointer(QT_VERTEX_COORDS_ATTR, (GLfloat*)vertexCoordinates->data());
- setVertexAttributePointer(QT_TEXTURE_COORDS_ATTR, (GLfloat*)textureCoordinates->data());
+ if (glyphType != QFontEngineGlyphCache::Raster_ARGB || recreateVertexArrays) {
+ setVertexAttributePointer(QT_VERTEX_COORDS_ATTR, (GLfloat*)vertexCoordinates->data());
+ setVertexAttributePointer(QT_TEXTURE_COORDS_ATTR, (GLfloat*)textureCoordinates->data());
+ }
if (!snapToPixelGrid) {
snapToPixelGrid = true;
@@ -1711,9 +1737,9 @@ void QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type
}
compositionModeDirty = false; // I can handle this myself, thank you very much
- prepareForDraw(false); // Text always causes src pixels to be transparent
+ prepareForCachedGlyphDraw(*cache);
- // prepareForDraw() have set the opacity on the current shader, so the opacity state can now be reset.
+ // prepareForCachedGlyphDraw() have set the opacity on the current shader, so the opacity state can now be reset.
if (compMode == QPainter::CompositionMode_Source) {
q->state()->opacity = oldOpacity;
opacityUniformDirty = true;
@@ -1734,7 +1760,7 @@ void QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type
}
compositionModeDirty = false; // I can handle this myself, thank you very much
- prepareForDraw(false); // Text always causes src pixels to be transparent
+ prepareForCachedGlyphDraw(*cache);
glEnable(GL_BLEND);
glBlendFunc(GL_ZERO, GL_ONE_MINUS_SRC_COLOR);
@@ -1758,22 +1784,31 @@ void QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type
}
compositionModeDirty = false;
- prepareForDraw(false); // Text always causes src pixels to be transparent
+ prepareForCachedGlyphDraw(*cache);
glEnable(GL_BLEND);
glBlendFunc(GL_ONE, GL_ONE);
}
compositionModeDirty = true;
+ } else if (glyphType == QFontEngineGlyphCache::Raster_ARGB) {
+ currentBrush = noBrush;
+ shaderManager->setSrcPixelType(QOpenGLEngineShaderManager::ImageSrc);
+ if (prepareForCachedGlyphDraw(*cache))
+ shaderManager->currentProgram()->setUniformValue(location(QOpenGLEngineShaderManager::ImageTexture), QT_IMAGE_TEXTURE_UNIT);
} else {
// Greyscale/mono glyphs
shaderManager->setMaskType(QOpenGLEngineShaderManager::PixelMask);
- prepareForDraw(false); // Text always causes src pixels to be transparent
+ prepareForCachedGlyphDraw(*cache);
}
QOpenGLTextureGlyphCache::FilterMode filterMode = (s->matrix.type() > QTransform::TxTranslate)?QOpenGLTextureGlyphCache::Linear:QOpenGLTextureGlyphCache::Nearest;
if (lastMaskTextureUsed != cache->texture() || cache->filterMode() != filterMode) {
- funcs.glActiveTexture(GL_TEXTURE0 + QT_MASK_TEXTURE_UNIT);
+ if (glyphType == QFontEngineGlyphCache::Raster_ARGB)
+ funcs.glActiveTexture(GL_TEXTURE0 + QT_IMAGE_TEXTURE_UNIT);
+ else
+ funcs.glActiveTexture(GL_TEXTURE0 + QT_MASK_TEXTURE_UNIT);
+
if (lastMaskTextureUsed != cache->texture()) {
glBindTexture(GL_TEXTURE_2D, cache->texture());
lastMaskTextureUsed = cache->texture();
@@ -1889,7 +1924,7 @@ void QOpenGL2PaintEngineExPrivate::drawPixmapFragments(const QPainter::PixmapFra
funcs.glActiveTexture(GL_TEXTURE0 + QT_IMAGE_TEXTURE_UNIT);
GLuint id = QOpenGLTextureCache::cacheForContext(ctx)->bindTexture(ctx, pixmap);
- transferMode(ImageArrayDrawingMode);
+ transferMode(ImageOpacityArrayDrawingMode);
bool isBitmap = pixmap.isQBitmap();
bool isOpaque = !isBitmap && (!pixmap.hasAlpha() || (hints & QPainter::OpaqueHint)) && allOpaque;
diff --git a/src/gui/opengl/qopenglpaintengine_p.h b/src/gui/opengl/qopenglpaintengine_p.h
index 93e1b4232e..d51f0e5256 100644
--- a/src/gui/opengl/qopenglpaintengine_p.h
+++ b/src/gui/opengl/qopenglpaintengine_p.h
@@ -70,7 +70,8 @@ enum EngineMode {
ImageDrawingMode,
TextDrawingMode,
BrushDrawingMode,
- ImageArrayDrawingMode
+ ImageArrayDrawingMode,
+ ImageOpacityArrayDrawingMode
};
QT_BEGIN_NAMESPACE
@@ -157,7 +158,8 @@ public:
void setRenderTextActive(bool);
bool isNativePaintingActive() const;
- bool supportsTransformations(QFontEngine *, const QTransform &) const { return true; }
+ bool requiresPretransformedGlyphPositions(QFontEngine *, const QTransform &) const { return false; }
+ bool shouldDrawCachedGlyphs(QFontEngine *, const QTransform &) const;
private:
Q_DISABLE_COPY(QOpenGL2PaintEngineEx)
@@ -235,6 +237,7 @@ public:
void setBrush(const QBrush& brush);
void transferMode(EngineMode newMode);
bool prepareForDraw(bool srcPixelsAreOpaque); // returns true if the program has changed
+ bool prepareForCachedGlyphDraw(const QFontEngineGlyphCache &cache);
inline void useSimpleShader();
inline GLuint location(const QOpenGLEngineShaderManager::Uniform uniform) {
return shaderManager->getUniformLocation(uniform);
diff --git a/src/gui/opengl/qopenglshadercache_meego_p.h b/src/gui/opengl/qopenglshadercache_meego_p.h
index 3d62d79ee7..d1c14150d1 100644
--- a/src/gui/opengl/qopenglshadercache_meego_p.h
+++ b/src/gui/opengl/qopenglshadercache_meego_p.h
@@ -68,8 +68,6 @@
# include <syslog.h>
#endif
-QT_BEGIN_HEADER
-
/*
This cache stores internal Qt shader programs in shared memory.
@@ -450,7 +448,5 @@ QT_END_NAMESPACE
#endif
-QT_END_HEADER
-
#endif
#endif
diff --git a/src/gui/opengl/qopenglshadercache_p.h b/src/gui/opengl/qopenglshadercache_p.h
index 0e0b6c3735..17305539df 100644
--- a/src/gui/opengl/qopenglshadercache_p.h
+++ b/src/gui/opengl/qopenglshadercache_p.h
@@ -59,8 +59,6 @@
# include "qopenglshadercache_meego_p.h"
#else
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -91,7 +89,5 @@ public:
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif
#endif
diff --git a/src/gui/opengl/qopenglshaderprogram.cpp b/src/gui/opengl/qopenglshaderprogram.cpp
index 88c9c8008c..1cde0cb92d 100644
--- a/src/gui/opengl/qopenglshaderprogram.cpp
+++ b/src/gui/opengl/qopenglshaderprogram.cpp
@@ -49,6 +49,11 @@
#include <QtCore/qvector.h>
#include <QtGui/qtransform.h>
#include <QtGui/QColor>
+#include <QtGui/QSurfaceFormat>
+
+#if !defined(QT_OPENGL_ES_2)
+#include <QtGui/qopenglfunctions_4_0_core.h>
+#endif
QT_BEGIN_NAMESPACE
@@ -145,6 +150,14 @@ QT_BEGIN_NAMESPACE
\value Vertex Vertex shader written in the OpenGL Shading Language (GLSL).
\value Fragment Fragment shader written in the OpenGL Shading Language (GLSL).
+ \value Geometry Geometry shaders written in the OpenGL Shading Language (GLSL)
+ based on the OpenGL core feature (requires OpenGL >= 3.2).
+ \value TessellationControl Tessellation control shaders written in the OpenGL
+ shading language (GLSL), based on the core feature (requires OpenGL >= 4.0).
+ \value TessellationEvaluation Tessellation evaluation shaders written in the OpenGL
+ shading language (GLSL), based on the core feature (requires OpenGL >= 4.0).
+ \value Compute Compute shaders written in the OpenGL shading language (GLSL),
+ based on the core feature (requires OpenGL >= 4.3).
*/
class QOpenGLShaderPrivate : public QObjectPrivate
@@ -156,7 +169,20 @@ public:
, shaderType(type)
, compiled(false)
, glfuncs(new QOpenGLFunctions(ctx))
+#ifndef QT_OPENGL_ES_2
+ , supportsGeometryShaders(false)
+ , supportsTessellationShaders(false)
+#endif
{
+#ifndef QT_OPENGL_ES_2
+ QSurfaceFormat f = ctx->format();
+
+ // Geometry shaders require OpenGL >= 3.2
+ if (shaderType & QOpenGLShader::Geometry)
+ supportsGeometryShaders = (f.version() >= qMakePair<int, int>(3, 2));
+ else if (shaderType & (QOpenGLShader::TessellationControl | QOpenGLShader::TessellationEvaluation))
+ supportsTessellationShaders = (f.version() >= qMakePair<int, int>(4, 0));
+#endif
}
~QOpenGLShaderPrivate();
@@ -167,6 +193,14 @@ public:
QOpenGLFunctions *glfuncs;
+#ifndef QT_OPENGL_ES_2
+ // Support for geometry shaders
+ bool supportsGeometryShaders;
+
+ // Support for tessellation shaders
+ bool supportsTessellationShaders;
+#endif
+
bool create();
bool compile(QOpenGLShader *q);
void deleteShader();
@@ -192,10 +226,25 @@ bool QOpenGLShaderPrivate::create()
if (!context)
return false;
GLuint shader;
- if (shaderType == QOpenGLShader::Vertex)
+ if (shaderType == QOpenGLShader::Vertex) {
shader = glfuncs->glCreateShader(GL_VERTEX_SHADER);
- else
+#if defined(QT_OPENGL_3_2)
+ } else if (shaderType == QOpenGLShader::Geometry && supportsGeometryShaders) {
+ shader = glfuncs->glCreateShader(GL_GEOMETRY_SHADER);
+#endif
+#if defined(QT_OPENGL_4)
+ } else if (shaderType == QOpenGLShader::TessellationControl && supportsTessellationShaders) {
+ shader = glfuncs->glCreateShader(GL_TESS_CONTROL_SHADER);
+ } else if (shaderType == QOpenGLShader::TessellationEvaluation && supportsTessellationShaders) {
+ shader = glfuncs->glCreateShader(GL_TESS_EVALUATION_SHADER);
+#endif
+#if defined(QT_OPENGL_4_3)
+ } else if (shaderType == QOpenGLShader::Compute) {
+ shader = glfuncs->glCreateShader(GL_COMPUTE_SHADER);
+#endif
+ } else {
shader = glfuncs->glCreateShader(GL_FRAGMENT_SHADER);
+ }
if (!shader) {
qWarning() << "QOpenGLShader: could not create shader";
return false;
@@ -234,6 +283,8 @@ bool QOpenGLShaderPrivate::compile(QOpenGLShader *q)
type = types[0];
else if (shaderType == QOpenGLShader::Vertex)
type = types[1];
+ else if (shaderType == QOpenGLShader::Geometry)
+ type = types[2];
// Get info and source code lengths
GLint infoLogLength = 0;
@@ -329,18 +380,12 @@ QOpenGLShader::ShaderType QOpenGLShader::shaderType() const
return d->shaderType;
}
-// The precision qualifiers are useful on OpenGL/ES systems,
-// but usually not present on desktop systems. Define the
-// keywords to empty strings on desktop systems.
-#if !defined(QT_OPENGL_ES) || defined(QT_OPENGL_FORCE_SHADER_DEFINES)
-#define QOpenGL_DEFINE_QUALIFIERS 1
static const char qualifierDefines[] =
"#define lowp\n"
"#define mediump\n"
"#define highp\n";
-#else
-
+#if defined(QT_OPENGL_ES) && !defined(QT_OPENGL_FORCE_SHADER_DEFINES)
// The "highp" qualifier doesn't exist in fragment shaders
// on all ES platforms. When it doesn't exist, use "mediump".
#define QOpenGL_REDEFINE_HIGHP 1
@@ -380,10 +425,19 @@ bool QOpenGLShader::compileSourceCode(const char *source)
src.append(source);
srclen.append(GLint(headerLen));
}
-#ifdef QOpenGL_DEFINE_QUALIFIERS
- src.append(qualifierDefines);
- srclen.append(GLint(sizeof(qualifierDefines) - 1));
+
+ // The precision qualifiers are useful on OpenGL/ES systems,
+ // but usually not present on desktop systems.
+ const QSurfaceFormat currentSurfaceFormat = QOpenGLContext::currentContext()->format();
+ if (currentSurfaceFormat.renderableType() == QSurfaceFormat::OpenGL
+#ifdef QT_OPENGL_FORCE_SHADER_DEFINES
+ || true
#endif
+ ) {
+ src.append(qualifierDefines);
+ srclen.append(GLint(sizeof(qualifierDefines) - 1));
+ }
+
#ifdef QOpenGL_REDEFINE_HIGHP
if (d->shaderType == Fragment) {
src.append(redefineHighp);
@@ -510,6 +564,9 @@ public:
, inited(false)
, removingShaders(false)
, glfuncs(new QOpenGLFunctions)
+#ifndef QT_OPENGL_ES_2
+ , tessellationFuncs(0)
+#endif
{
}
~QOpenGLShaderProgramPrivate();
@@ -525,6 +582,11 @@ public:
QOpenGLFunctions *glfuncs;
+#ifndef QT_OPENGL_ES_2
+ // Tessellation shader support
+ QOpenGLFunctions_4_0_Core *tessellationFuncs;
+#endif
+
bool hasShader(QOpenGLShader::ShaderType type) const;
};
@@ -582,6 +644,16 @@ bool QOpenGLShaderProgram::init()
if (!context)
return false;
d->glfuncs->initializeOpenGLFunctions();
+
+#ifndef QT_OPENGL_ES_2
+ // Resolve OpenGL 4 functions for tessellation shader support
+ QSurfaceFormat format = context->format();
+ if (format.version() >= qMakePair<int, int>(4, 0)) {
+ d->tessellationFuncs = context->versionFunctions<QOpenGLFunctions_4_0_Core>();
+ d->tessellationFuncs->initializeOpenGLFunctions();
+ }
+#endif
+
GLuint program = d->glfuncs->glCreateProgram();
if (!program) {
qWarning() << "QOpenGLShaderProgram: could not create shader program";
@@ -2927,6 +2999,198 @@ void QOpenGLShaderProgram::setUniformValueArray(const char *name, const QMatrix4
}
/*!
+ Returns the hardware limit for how many vertices a geometry shader
+ can output.
+*/
+int QOpenGLShaderProgram::maxGeometryOutputVertices() const
+{
+ GLint n = 0;
+#if defined(QT_OPENGL_3_2)
+ glGetIntegerv(GL_MAX_GEOMETRY_OUTPUT_VERTICES, &n);
+#endif
+ return n;
+}
+
+/*!
+ Use this function to specify to OpenGL the number of vertices in
+ a patch to \a count. A patch is a custom OpenGL primitive whose interpretation
+ is entirely defined by the tessellation shader stages. Therefore, calling
+ this function only makes sense when using a QOpenGLShaderProgram
+ containing tessellation stage shaders. When using OpenGL tessellation,
+ the only primitive that can be rendered with \c{glDraw*()} functions is
+ \c{GL_PATCHES}.
+
+ This is equivalent to calling glPatchParameteri(GL_PATCH_VERTICES, count).
+
+ \note This modifies global OpenGL state and is not specific to this
+ QOpenGLShaderProgram instance. You should call this in your render
+ function when needed, as QOpenGLShaderProgram will not apply this for
+ you. This is purely a convenience function.
+
+ \sa patchVertexCount()
+*/
+void QOpenGLShaderProgram::setPatchVertexCount(int count)
+{
+#if defined(QT_OPENGL_4)
+ Q_D(QOpenGLShaderProgram);
+ if (d->tessellationFuncs)
+ d->tessellationFuncs->glPatchParameteri(GL_PATCH_VERTICES, count);
+#else
+ Q_UNUSED(count);
+#endif
+}
+
+/*!
+ Returns the number of vertices per-patch to be used when rendering.
+
+ \note This returns the global OpenGL state value. It is not specific to
+ this QOpenGLShaderProgram instance.
+
+ \sa setPatchVertexCount()
+*/
+int QOpenGLShaderProgram::patchVertexCount() const
+{
+ int patchVertices = 0;
+#if defined(QT_OPENGL_4)
+ Q_D(const QOpenGLShaderProgram);
+ if (d->tessellationFuncs)
+ d->tessellationFuncs->glGetIntegerv(GL_PATCH_VERTICES, &patchVertices);
+#endif
+ return patchVertices;
+}
+
+/*!
+ Sets the default outer tessellation levels to be used by the tessellation
+ primitive generator in the event that the tessellation control shader
+ does not output them to \a levels. For more details on OpenGL and Tessellation
+ shaders see \l{OpenGL Tessellation Shaders}.
+
+ The \a levels argument should be a QVector consisting of 4 floats. Not all
+ of the values make sense for all tessellation modes. If you specify a vector with
+ fewer than 4 elements, the remaining elements will be given a default value of 1.
+
+ \note This modifies global OpenGL state and is not specific to this
+ QOpenGLShaderProgram instance. You should call this in your render
+ function when needed, as QOpenGLShaderProgram will not apply this for
+ you. This is purely a convenience function.
+
+ \sa defaultOuterTessellationLevels(), setDefaultInnerTessellationLevels()
+*/
+void QOpenGLShaderProgram::setDefaultOuterTessellationLevels(const QVector<float> &levels)
+{
+#if defined(QT_OPENGL_4)
+ QVector<float> tessLevels = levels;
+
+ // Ensure we have the required 4 outer tessellation levels
+ // Use default of 1 for missing entries (same as spec)
+ const int argCount = 4;
+ if (tessLevels.size() < argCount) {
+ tessLevels.reserve(argCount);
+ for (int i = tessLevels.size(); i < argCount; ++i)
+ tessLevels.append(1.0f);
+ }
+
+ Q_D(QOpenGLShaderProgram);
+ if (d->tessellationFuncs)
+ d->tessellationFuncs->glPatchParameterfv(GL_PATCH_DEFAULT_OUTER_LEVEL, tessLevels.data());
+#else
+ Q_UNUSED(levels);
+#endif
+}
+
+/*!
+ Returns the default outer tessellation levels to be used by the tessellation
+ primitive generator in the event that the tessellation control shader
+ does not output them. For more details on OpenGL and Tessellation shaders see
+ \l{OpenGL Tessellation Shaders}.
+
+ Returns a QVector of floats describing the outer tessellation levels. The vector
+ will always have four elements but not all of them make sense for every mode
+ of tessellation.
+
+ \note This returns the global OpenGL state value. It is not specific to
+ this QOpenGLShaderProgram instance.
+
+ \sa setDefaultOuterTessellationLevels(), defaultInnerTessellationLevels()
+*/
+QVector<float> QOpenGLShaderProgram::defaultOuterTessellationLevels() const
+{
+ QVector<float> tessLevels(4, 1.0f);
+#if defined(QT_OPENGL_4)
+ Q_D(const QOpenGLShaderProgram);
+ if (d->tessellationFuncs)
+ d->tessellationFuncs->glGetFloatv(GL_PATCH_DEFAULT_OUTER_LEVEL, tessLevels.data());
+#endif
+ return tessLevels;
+}
+
+/*!
+ Sets the default outer tessellation levels to be used by the tessellation
+ primitive generator in the event that the tessellation control shader
+ does not output them to \a levels. For more details on OpenGL and Tessellation shaders see
+ \l{OpenGL Tessellation Shaders}.
+
+ The \a levels argument should be a QVector consisting of 2 floats. Not all
+ of the values make sense for all tessellation modes. If you specify a vector with
+ fewer than 2 elements, the remaining elements will be given a default value of 1.
+
+ \note This modifies global OpenGL state and is not specific to this
+ QOpenGLShaderProgram instance. You should call this in your render
+ function when needed, as QOpenGLShaderProgram will not apply this for
+ you. This is purely a convenience function.
+
+ \sa defaultInnerTessellationLevels(), setDefaultOuterTessellationLevels()
+*/
+void QOpenGLShaderProgram::setDefaultInnerTessellationLevels(const QVector<float> &levels)
+{
+#if defined(QT_OPENGL_4)
+ QVector<float> tessLevels = levels;
+
+ // Ensure we have the required 2 inner tessellation levels
+ // Use default of 1 for missing entries (same as spec)
+ const int argCount = 2;
+ if (tessLevels.size() < argCount) {
+ tessLevels.reserve(argCount);
+ for (int i = tessLevels.size(); i < argCount; ++i)
+ tessLevels.append(1.0f);
+ }
+
+ Q_D(QOpenGLShaderProgram);
+ if (d->tessellationFuncs)
+ d->tessellationFuncs->glPatchParameterfv(GL_PATCH_DEFAULT_INNER_LEVEL, tessLevels.data());
+#else
+ Q_UNUSED(levels);
+#endif
+}
+
+/*!
+ Returns the default inner tessellation levels to be used by the tessellation
+ primitive generator in the event that the tessellation control shader
+ does not output them. For more details on OpenGL and Tessellation shaders see
+ \l{OpenGL Tessellation Shaders}.
+
+ Returns a QVector of floats describing the inner tessellation levels. The vector
+ will always have two elements but not all of them make sense for every mode
+ of tessellation.
+
+ \note This returns the global OpenGL state value. It is not specific to
+ this QOpenGLShaderProgram instance.
+
+ \sa setDefaultInnerTessellationLevels(), defaultOuterTessellationLevels()
+*/
+QVector<float> QOpenGLShaderProgram::defaultInnerTessellationLevels() const
+{
+ QVector<float> tessLevels(2, 1.0f);
+#if defined(QT_OPENGL_4)
+ Q_D(const QOpenGLShaderProgram);
+ if (d->tessellationFuncs)
+ d->tessellationFuncs->glGetFloatv(GL_PATCH_DEFAULT_OUTER_LEVEL, tessLevels.data());
+#endif
+ return tessLevels;
+}
+
+
+/*!
Returns true if shader programs written in the OpenGL Shading
Language (GLSL) are supported on this system; false otherwise.
@@ -2972,9 +3236,37 @@ bool QOpenGLShader::hasOpenGLShaders(ShaderType type, QOpenGLContext *context)
if (!context)
return false;
- if ((type & ~(Vertex | Fragment)) || type == 0)
+ if ((type & ~(Geometry | Vertex | Fragment | TessellationControl | TessellationEvaluation | Compute)) || type == 0)
+ return false;
+
+ QSurfaceFormat format = context->format();
+ if (type == Geometry) {
+#ifndef QT_OPENGL_ES_2
+ // Geometry shaders require OpenGL 3.2 or newer
+ QSurfaceFormat format = context->format();
+ return (format.version() >= qMakePair<int, int>(3, 2));
+#else
+ // No geometry shader support in OpenGL ES2
+ return false;
+#endif
+ } else if (type == TessellationControl || type == TessellationEvaluation) {
+#if !defined(QT_OPENGL_ES_2)
+ return (format.version() >= qMakePair<int, int>(4, 0));
+#else
+ // No tessellation shader support in OpenGL ES2
return false;
+#endif
+ } else if (type == Compute) {
+#if defined(QT_OPENGL_4_3)
+ return (format.version() >= qMakePair<int, int>(4, 3));
+#else
+ // No compute shader support without OpenGL 4.3 or newer
+ return false;
+#endif
+ }
+ // Unconditional support of vertex and fragment shaders implicitly assumes
+ // a minimum OpenGL version of 2.0
return true;
}
diff --git a/src/gui/opengl/qopenglshaderprogram.h b/src/gui/opengl/qopenglshaderprogram.h
index cd05d0f96b..6c3dd37843 100644
--- a/src/gui/opengl/qopenglshaderprogram.h
+++ b/src/gui/opengl/qopenglshaderprogram.h
@@ -50,8 +50,6 @@
#include <QtGui/qvector4d.h>
#include <QtGui/qmatrix4x4.h>
-QT_BEGIN_HEADER
-
QT_BEGIN_NAMESPACE
@@ -65,8 +63,12 @@ class Q_GUI_EXPORT QOpenGLShader : public QObject
public:
enum ShaderTypeBit
{
- Vertex = 0x0001,
- Fragment = 0x0002
+ Vertex = 0x0001,
+ Fragment = 0x0002,
+ Geometry = 0x0004,
+ TessellationControl = 0x0008,
+ TessellationEvaluation = 0x0010,
+ Compute = 0x0020
};
Q_DECLARE_FLAGS(ShaderType, ShaderTypeBit)
@@ -128,6 +130,17 @@ public:
GLuint programId() const;
+ int maxGeometryOutputVertices() const;
+
+ void setPatchVertexCount(int count);
+ int patchVertexCount() const;
+
+ void setDefaultOuterTessellationLevels(const QVector<float> &levels);
+ QVector<float> defaultOuterTessellationLevels() const;
+
+ void setDefaultInnerTessellationLevels(const QVector<float> &levels);
+ QVector<float> defaultInnerTessellationLevels() const;
+
void bindAttributeLocation(const char *name, int location);
void bindAttributeLocation(const QByteArray& name, int location);
void bindAttributeLocation(const QString& name, int location);
@@ -293,8 +306,6 @@ private:
QT_END_NAMESPACE
-QT_END_HEADER
-
#endif // QT_NO_OPENGL
#endif
diff --git a/src/gui/opengl/qopengltexturecache.cpp b/src/gui/opengl/qopengltexturecache.cpp
index fffc3688e3..94b82885ff 100644
--- a/src/gui/opengl/qopengltexturecache.cpp
+++ b/src/gui/opengl/qopengltexturecache.cpp
@@ -95,9 +95,10 @@ void QOpenGLTextureCacheWrapper::cleanupTexturesForPixmapData(QPlatformPixmap *p
cleanupTexturesForCacheKey(pmd->cacheKey());
}
-QOpenGLTextureCache::QOpenGLTextureCache(QOpenGLContext *ctx)
+QOpenGLTextureCache::QOpenGLTextureCache(QOpenGLContext *ctx, bool useByteSwapImage)
: QOpenGLSharedResource(ctx->shareGroup())
, m_cache(64 * 1024) // 64 MB cache
+ , m_useByteSwapImage(useByteSwapImage)
{
}
@@ -180,7 +181,9 @@ GLuint QOpenGLTextureCache::bindTexture(QOpenGLContext *context, qint64 key, con
QImage tx = image.convertToFormat(QImage::Format_ARGB32_Premultiplied);
- qgl_byteSwapImage(tx);
+ // Performance could be improved by skipping qgl_byteSwapImage().
+ if (m_useByteSwapImage)
+ qgl_byteSwapImage(tx);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, tx.width(), tx.height(), 0, GL_RGBA, GL_UNSIGNED_BYTE, const_cast<const QImage &>(tx).bits());
diff --git a/src/gui/opengl/qopengltexturecache_p.h b/src/gui/opengl/qopengltexturecache_p.h
index 2e82d5f373..d4d3f00069 100644
--- a/src/gui/opengl/qopengltexturecache_p.h
+++ b/src/gui/opengl/qopengltexturecache_p.h
@@ -78,7 +78,7 @@ class Q_GUI_EXPORT QOpenGLTextureCache : public QOpenGLSharedResource
public:
static QOpenGLTextureCache *cacheForContext(QOpenGLContext *context);
- QOpenGLTextureCache(QOpenGLContext *);
+ QOpenGLTextureCache(QOpenGLContext *, bool useByteSwapImage = true);
~QOpenGLTextureCache();
GLuint bindTexture(QOpenGLContext *context, const QPixmap &pixmap);
@@ -94,6 +94,7 @@ private:
QMutex m_mutex;
QCache<quint64, QOpenGLCachedTexture> m_cache;
+ bool m_useByteSwapImage;
};
QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopengltextureglyphcache.cpp b/src/gui/opengl/qopengltextureglyphcache.cpp
index b751629117..83f407575e 100644
--- a/src/gui/opengl/qopengltextureglyphcache.cpp
+++ b/src/gui/opengl/qopengltextureglyphcache.cpp
@@ -120,7 +120,7 @@ void QOpenGLTextureGlyphCache::createTextureData(int width, int height)
m_textureResource->m_width = width;
m_textureResource->m_height = height;
- if (m_type == QFontEngineGlyphCache::Raster_RGBMask) {
+ if (m_type == QFontEngineGlyphCache::Raster_RGBMask || m_type == QFontEngineGlyphCache::Raster_ARGB) {
QVarLengthArray<uchar> data(width * height * 4);
for (int i = 0; i < data.size(); ++i)
data[i] = 0;
@@ -314,30 +314,40 @@ void QOpenGLTextureGlyphCache::fillTexture(const Coord &c, glyph_t glyph, QFixed
for (int x = 0; x < maskWidth; ++x)
src[x] = -src[x]; // convert 0 and 1 into 0 and 255
}
- } else if (mask.format() == QImage::Format_RGB32) {
- // Make the alpha component equal to the average of the RGB values.
- // This is needed when drawing sub-pixel antialiased text on translucent targets.
- for (int y = 0; y < maskHeight; ++y) {
- quint32 *src = (quint32 *) mask.scanLine(y);
- for (int x = 0; x < maskWidth; ++x) {
- uchar r = src[x] >> 16;
- uchar g = src[x] >> 8;
- uchar b = src[x];
- quint32 avg = (quint32(r) + quint32(g) + quint32(b) + 1) / 3; // "+1" for rounding.
+ } else if (mask.depth() == 32) {
+ if (mask.format() == QImage::Format_RGB32
+ // We need to make the alpha component equal to the average of the RGB values.
+ // This is needed when drawing sub-pixel antialiased text on translucent targets.
+#if defined(QT_OPENGL_ES_2)
+ || !hasBGRA // We need to reverse the bytes
+#endif
+ ) {
+ for (int y = 0; y < maskHeight; ++y) {
+ quint32 *src = (quint32 *) mask.scanLine(y);
+ for (int x = 0; x < maskWidth; ++x) {
+ uchar r = src[x] >> 16;
+ uchar g = src[x] >> 8;
+ uchar b = src[x];
+ quint32 avg;
+ if (mask.format() == QImage::Format_RGB32)
+ avg = (quint32(r) + quint32(g) + quint32(b) + 1) / 3; // "+1" for rounding.
+ else // Format_ARGB_Premultiplied
+ avg = src[x] >> 24;
#if defined(QT_OPENGL_ES_2)
- if (!hasBGRA) {
- // Reverse bytes to match GL_RGBA
- src[x] = (avg << 24) | (quint32(r) << 0) | (quint32(g) << 8) | (quint32(b) << 16);
- } else
+ if (!hasBGRA) {
+ // Reverse bytes to match GL_RGBA
+ src[x] = (avg << 24) | (quint32(r) << 0) | (quint32(g) << 8) | (quint32(b) << 16);
+ } else
#endif
- src[x] = (src[x] & 0x00ffffff) | (avg << 24);
+ src[x] = (src[x] & 0x00ffffff) | (avg << 24);
+ }
}
}
}
glBindTexture(GL_TEXTURE_2D, m_textureResource->m_texture);
- if (mask.format() == QImage::Format_RGB32) {
+ if (mask.depth() == 32) {
#if defined(QT_OPENGL_ES_2)
glTexSubImage2D(GL_TEXTURE_2D, 0, c.x, c.y, maskWidth, maskHeight, hasBGRA ? GL_BGRA_EXT : GL_RGBA, GL_UNSIGNED_BYTE, mask.bits());
#else
diff --git a/src/gui/opengl/qopenglversionfunctions.cpp b/src/gui/opengl/qopenglversionfunctions.cpp
new file mode 100644
index 0000000000..d39ecd9d4c
--- /dev/null
+++ b/src/gui/opengl/qopenglversionfunctions.cpp
@@ -0,0 +1,1791 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglversionfunctions.h"
+#include "qopenglcontext.h"
+#include "qdebug.h"
+
+QT_BEGIN_NAMESPACE
+
+QOpenGLVersionFunctionsBackend *QAbstractOpenGLFunctionsPrivate::functionsBackend(QOpenGLContext *context,
+ const QOpenGLVersionStatus &v)
+{
+ Q_ASSERT(context);
+ return context->functionsBackend(v);
+}
+
+void QAbstractOpenGLFunctionsPrivate::insertFunctionsBackend(QOpenGLContext *context,
+ const QOpenGLVersionStatus &v,
+ QOpenGLVersionFunctionsBackend *backend)
+{
+ Q_ASSERT(context);
+ context->insertFunctionsBackend(v, backend);
+}
+
+void QAbstractOpenGLFunctionsPrivate::removeFunctionsBackend(QOpenGLContext *context, const QOpenGLVersionStatus &v)
+{
+ Q_ASSERT(context);
+ context->removeFunctionsBackend(v);
+}
+
+
+/*!
+ \class QAbstractOpenGLFunctions
+ \inmodule QtGui
+ \since 5.1
+ \brief The QAbstractOpenGLFunctions class is the base class of a family of
+ classes that expose all functions for each OpenGL version and
+ profile.
+
+ OpenGL implementations on different platforms are able to link to a variable
+ number of OpenGL functions depending upon the OpenGL ABI on that platform.
+ For example, on Microsoft Windows only functions up to those in OpenGL 1.1
+ can be linked to at build time. All other functions must be resolved at
+ runtime. The traditional solution to this has been to use either
+ QOpenGLContext::getProcAddress() or QOpenGLFunctions. The former is tedious
+ and error prone and means dealing directly with function pointers. The
+ latter only exposes those functions common to OpenGL ES 2 and desktop
+ OpenGL. There is however much new OpenGL functionality that is useful when
+ writing real world OpenGL applications.
+
+ Qt now provides a family of classes which all inherit from
+ QAbstractOpenGLFunctions which expose every core OpenGL function by way of a
+ corresponding member function. There is a class for every valid combination
+ of OpenGL version and profile. Each class follows the naming convention
+ QOpenGLFunctions_<MAJOR VERSION>_<MINOR VERSION>[_PROFILE].
+
+ For OpenGL versions 1.0 through to 3.0 there are no profiles, leading to the
+ classes:
+
+ \list
+ \li QOpenGLFunctions_1_0
+ \li QOpenGLFunctions_1_1
+ \li QOpenGLFunctions_1_2
+ \li QOpenGLFunctions_1_3
+ \li QOpenGLFunctions_1_4
+ \li QOpenGLFunctions_1_5
+ \li QOpenGLFunctions_2_0
+ \li QOpenGLFunctions_2_1
+ \li QOpenGLFunctions_3_0
+ \endlist
+
+ where each class inherits from QAbstractOpenGLFunctions.
+
+ OpenGL version 3.1 removed many deprecated functions leading to a much
+ simpler and generic API.
+
+ With OpenGL 3.2 the concept of profiles was introduced. Two profiles are
+ currently defined for OpenGL: Core and Compatibility.
+
+ The Core profile does not include any of the functions that were removed
+ in OpenGL 3.1. The Compatibility profile contains all functions in the
+ Core profile of the same version plus all of the functions that were
+ removed in OpenGL 3.1. In this way the Compatibility profile classes allow
+ use of newer OpenGL functionality but also allows you to keep using your
+ legacy OpenGL code. For new OpenGL code the Core profile should be
+ preferred.
+
+ Please note that some vendors, notably Apple, do not implement the
+ Compatibility profile. Therefore if you wish to target new OpenGL features
+ on OS X then you should ensure that you request a Core profile context via
+ QSurfaceFormat::setProfile().
+
+ Qt provides classes for all version and Core and Compatibility profile
+ combinations. The classes for OpenGL versions 3.1 through to 4.3 are:
+
+ \list
+ \li QOpenGLFunctions_3_1
+ \li QOpenGLFunctions_3_2_Core
+ \li QOpenGLFunctions_3_2_Compatibility
+ \li QOpenGLFunctions_3_3_Core
+ \li QOpenGLFunctions_3_3_Compatibility
+ \li QOpenGLFunctions_4_0_Core
+ \li QOpenGLFunctions_4_0_Compatibility
+ \li QOpenGLFunctions_4_1_Core
+ \li QOpenGLFunctions_4_1_Compatibility
+ \li QOpenGLFunctions_4_2_Core
+ \li QOpenGLFunctions_4_2_Compatibility
+ \li QOpenGLFunctions_4_3_Core
+ \li QOpenGLFunctions_4_3_Compatibility
+ \endlist
+
+ where each class inherits from QAbstractOpenGLFunctions.
+
+ A pointer to an object of the class corresponding to the version and
+ profile of OpenGL in use can be obtained from
+ QOpenGLFunctions::versionFunctions(). If obtained in this way, note that
+ the QOpenGLContext retains ownership of the object. This is so that only
+ one instance need be created.
+
+ Before calling any of the exposed OpenGL functions you must ensure that the
+ object has resolved the function pointers to the OpenGL functions. This
+ only needs to be done once per instance with initializeOpenGLFunctions().
+ Once initialized, the object can be used to call any OpenGL function for
+ the corresponding version and profile. Note that initializeOpenGLFunctions()
+ can fail in some circumstances so check the return value. Situations in
+ which initialization can fail are if you have a functions object for a version
+ or profile that contains functions that are not part of the context being
+ used to resolve the function pointers.
+
+ If you exclusively use function objects then you will get compile time
+ errors if you attempt to use a function not included in that version and
+ profile. This is obviously a lot easier to debug than undefined behavior
+ at run time.
+
+ \sa QOpenGLContext::versionFunctions()
+*/
+QAbstractOpenGLFunctions::QAbstractOpenGLFunctions()
+ : d_ptr(new QAbstractOpenGLFunctionsPrivate)
+{
+}
+
+QAbstractOpenGLFunctions::~QAbstractOpenGLFunctions()
+{
+ delete d_ptr;
+}
+
+bool QAbstractOpenGLFunctions::initializeOpenGLFunctions()
+{
+ Q_D(QAbstractOpenGLFunctions);
+ d->initialized = true;
+ return true;
+}
+
+bool QAbstractOpenGLFunctions::isInitialized() const
+{
+ Q_D(const QAbstractOpenGLFunctions);
+ return d->initialized;
+}
+
+void QAbstractOpenGLFunctions::setOwningContext(const QOpenGLContext *context)
+{
+ Q_D(QAbstractOpenGLFunctions);
+ d->owningContext = const_cast<QOpenGLContext*>(context);
+}
+
+QOpenGLContext *QAbstractOpenGLFunctions::owningContext() const
+{
+ Q_D(const QAbstractOpenGLFunctions);
+ return d->owningContext;
+}
+
+#if !defined(QT_OPENGL_ES_2)
+
+QOpenGLFunctions_1_0_CoreBackend::QOpenGLFunctions_1_0_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.0 core functions
+#if defined(Q_OS_WIN)
+ HMODULE handle = GetModuleHandleA("opengl32.dll");
+ Viewport = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei )>(GetProcAddress(handle, "glViewport"));
+ DepthRange = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(GetProcAddress(handle, "glDepthRange"));
+ IsEnabled = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glIsEnabled"));
+ GetTexLevelParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLint *)>(GetProcAddress(handle, "glGetTexLevelParameteriv"));
+ GetTexLevelParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLfloat *)>(GetProcAddress(handle, "glGetTexLevelParameterfv"));
+ GetTexParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(GetProcAddress(handle, "glGetTexParameteriv"));
+ GetTexParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(GetProcAddress(handle, "glGetTexParameterfv"));
+ GetTexImage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLenum , GLvoid *)>(GetProcAddress(handle, "glGetTexImage"));
+ GetString = reinterpret_cast<const GLubyte * (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glGetString"));
+ GetIntegerv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint *)>(GetProcAddress(handle, "glGetIntegerv"));
+ GetFloatv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat *)>(GetProcAddress(handle, "glGetFloatv"));
+ GetError = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glGetError"));
+ GetDoublev = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble *)>(GetProcAddress(handle, "glGetDoublev"));
+ GetBooleanv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLboolean *)>(GetProcAddress(handle, "glGetBooleanv"));
+ ReadPixels = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , GLvoid *)>(GetProcAddress(handle, "glReadPixels"));
+ ReadBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glReadBuffer"));
+ PixelStorei = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(GetProcAddress(handle, "glPixelStorei"));
+ PixelStoref = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(GetProcAddress(handle, "glPixelStoref"));
+ DepthFunc = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glDepthFunc"));
+ StencilOp = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum )>(GetProcAddress(handle, "glStencilOp"));
+ StencilFunc = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLuint )>(GetProcAddress(handle, "glStencilFunc"));
+ LogicOp = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glLogicOp"));
+ BlendFunc = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(GetProcAddress(handle, "glBlendFunc"));
+ Flush = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glFlush"));
+ Finish = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glFinish"));
+ Enable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glEnable"));
+ Disable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glDisable"));
+ DepthMask = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLboolean )>(GetProcAddress(handle, "glDepthMask"));
+ ColorMask = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLboolean , GLboolean , GLboolean , GLboolean )>(GetProcAddress(handle, "glColorMask"));
+ StencilMask = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(GetProcAddress(handle, "glStencilMask"));
+ ClearDepth = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(GetProcAddress(handle, "glClearDepth"));
+ ClearStencil = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(GetProcAddress(handle, "glClearStencil"));
+ ClearColor = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glClearColor"));
+ Clear = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbitfield )>(GetProcAddress(handle, "glClear"));
+ DrawBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glDrawBuffer"));
+ TexImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLsizei , GLsizei , GLint , GLenum , GLenum , const GLvoid *)>(GetProcAddress(handle, "glTexImage2D"));
+ TexImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLsizei , GLint , GLenum , GLenum , const GLvoid *)>(GetProcAddress(handle, "glTexImage1D"));
+ TexParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(GetProcAddress(handle, "glTexParameteriv"));
+ TexParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(GetProcAddress(handle, "glTexParameteri"));
+ TexParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(GetProcAddress(handle, "glTexParameterfv"));
+ TexParameterf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(GetProcAddress(handle, "glTexParameterf"));
+ Scissor = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei )>(GetProcAddress(handle, "glScissor"));
+ PolygonMode = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(GetProcAddress(handle, "glPolygonMode"));
+ PointSize = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(GetProcAddress(handle, "glPointSize"));
+ LineWidth = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(GetProcAddress(handle, "glLineWidth"));
+ Hint = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(GetProcAddress(handle, "glHint"));
+ FrontFace = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glFrontFace"));
+ CullFace = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glCullFace"));
+#else
+ Viewport = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei )>(context->getProcAddress("glViewport"));
+ DepthRange = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(context->getProcAddress("glDepthRange"));
+ IsEnabled = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glIsEnabled"));
+ GetTexLevelParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLint *)>(context->getProcAddress("glGetTexLevelParameteriv"));
+ GetTexLevelParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLfloat *)>(context->getProcAddress("glGetTexLevelParameterfv"));
+ GetTexParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetTexParameteriv"));
+ GetTexParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetTexParameterfv"));
+ GetTexImage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLenum , GLvoid *)>(context->getProcAddress("glGetTexImage"));
+ GetString = reinterpret_cast<const GLubyte * (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glGetString"));
+ GetIntegerv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint *)>(context->getProcAddress("glGetIntegerv"));
+ GetFloatv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat *)>(context->getProcAddress("glGetFloatv"));
+ GetError = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glGetError"));
+ GetDoublev = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble *)>(context->getProcAddress("glGetDoublev"));
+ GetBooleanv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLboolean *)>(context->getProcAddress("glGetBooleanv"));
+ ReadPixels = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , GLvoid *)>(context->getProcAddress("glReadPixels"));
+ ReadBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glReadBuffer"));
+ PixelStorei = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glPixelStorei"));
+ PixelStoref = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glPixelStoref"));
+ DepthFunc = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glDepthFunc"));
+ StencilOp = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum )>(context->getProcAddress("glStencilOp"));
+ StencilFunc = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLuint )>(context->getProcAddress("glStencilFunc"));
+ LogicOp = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glLogicOp"));
+ BlendFunc = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(context->getProcAddress("glBlendFunc"));
+ Flush = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glFlush"));
+ Finish = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glFinish"));
+ Enable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glEnable"));
+ Disable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glDisable"));
+ DepthMask = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLboolean )>(context->getProcAddress("glDepthMask"));
+ ColorMask = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLboolean , GLboolean , GLboolean , GLboolean )>(context->getProcAddress("glColorMask"));
+ StencilMask = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glStencilMask"));
+ ClearDepth = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(context->getProcAddress("glClearDepth"));
+ ClearStencil = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(context->getProcAddress("glClearStencil"));
+ ClearColor = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glClearColor"));
+ Clear = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbitfield )>(context->getProcAddress("glClear"));
+ DrawBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glDrawBuffer"));
+ TexImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLsizei , GLsizei , GLint , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glTexImage2D"));
+ TexImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLsizei , GLint , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glTexImage1D"));
+ TexParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(context->getProcAddress("glTexParameteriv"));
+ TexParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glTexParameteri"));
+ TexParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(context->getProcAddress("glTexParameterfv"));
+ TexParameterf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(context->getProcAddress("glTexParameterf"));
+ Scissor = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei )>(context->getProcAddress("glScissor"));
+ PolygonMode = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(context->getProcAddress("glPolygonMode"));
+ PointSize = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glPointSize"));
+ LineWidth = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glLineWidth"));
+ Hint = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(context->getProcAddress("glHint"));
+ FrontFace = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glFrontFace"));
+ CullFace = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glCullFace"));
+#endif
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_0_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 0, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_1_1_CoreBackend::QOpenGLFunctions_1_1_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.1 core functions
+#if defined(Q_OS_WIN)
+ HMODULE handle = GetModuleHandleA("opengl32.dll");
+ Indexubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(GetProcAddress(handle, "glIndexubv"));
+ Indexub = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte )>(GetProcAddress(handle, "glIndexub"));
+ IsTexture = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(GetProcAddress(handle, "glIsTexture"));
+ GenTextures = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(GetProcAddress(handle, "glGenTextures"));
+ DeleteTextures = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(GetProcAddress(handle, "glDeleteTextures"));
+ BindTexture = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(GetProcAddress(handle, "glBindTexture"));
+ TexSubImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *)>(GetProcAddress(handle, "glTexSubImage2D"));
+ TexSubImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLsizei , GLenum , GLenum , const GLvoid *)>(GetProcAddress(handle, "glTexSubImage1D"));
+ CopyTexSubImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint , GLint , GLsizei , GLsizei )>(GetProcAddress(handle, "glCopyTexSubImage2D"));
+ CopyTexSubImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint , GLsizei )>(GetProcAddress(handle, "glCopyTexSubImage1D"));
+ CopyTexImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLint , GLint , GLsizei , GLsizei , GLint )>(GetProcAddress(handle, "glCopyTexImage2D"));
+ CopyTexImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLint , GLint , GLsizei , GLint )>(GetProcAddress(handle, "glCopyTexImage1D"));
+ PolygonOffset = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(GetProcAddress(handle, "glPolygonOffset"));
+ GetPointerv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLvoid* *)>(GetProcAddress(handle, "glGetPointerv"));
+ DrawElements = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const GLvoid *)>(GetProcAddress(handle, "glDrawElements"));
+ DrawArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLsizei )>(GetProcAddress(handle, "glDrawArrays"));
+#else
+ Indexubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(context->getProcAddress("glIndexubv"));
+ Indexub = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte )>(context->getProcAddress("glIndexub"));
+ IsTexture = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsTexture"));
+ GenTextures = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenTextures"));
+ DeleteTextures = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteTextures"));
+ BindTexture = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBindTexture"));
+ TexSubImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glTexSubImage2D"));
+ TexSubImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLsizei , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glTexSubImage1D"));
+ CopyTexSubImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint , GLint , GLsizei , GLsizei )>(context->getProcAddress("glCopyTexSubImage2D"));
+ CopyTexSubImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint , GLsizei )>(context->getProcAddress("glCopyTexSubImage1D"));
+ CopyTexImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLint , GLint , GLsizei , GLsizei , GLint )>(context->getProcAddress("glCopyTexImage2D"));
+ CopyTexImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLint , GLint , GLsizei , GLint )>(context->getProcAddress("glCopyTexImage1D"));
+ PolygonOffset = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glPolygonOffset"));
+ GetPointerv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLvoid* *)>(context->getProcAddress("glGetPointerv"));
+ DrawElements = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const GLvoid *)>(context->getProcAddress("glDrawElements"));
+ DrawArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLsizei )>(context->getProcAddress("glDrawArrays"));
+#endif
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_1_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 1, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_1_2_CoreBackend::QOpenGLFunctions_1_2_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.2 core functions
+ CopyTexSubImage3D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint , GLint , GLint , GLsizei , GLsizei )>(context->getProcAddress("glCopyTexSubImage3D"));
+ TexSubImage3D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glTexSubImage3D"));
+ DrawRangeElements = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint , GLsizei , GLenum , const GLvoid *)>(context->getProcAddress("glDrawRangeElements"));
+ BlendEquation = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glBlendEquation"));
+ BlendColor = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glBlendColor"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_2_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 2, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_1_3_CoreBackend::QOpenGLFunctions_1_3_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.3 core functions
+ GetCompressedTexImage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLvoid *)>(context->getProcAddress("glGetCompressedTexImage"));
+ CompressedTexSubImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLsizei , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glCompressedTexSubImage1D"));
+ CompressedTexSubImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLsizei , GLsizei , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glCompressedTexSubImage2D"));
+ CompressedTexSubImage3D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glCompressedTexSubImage3D"));
+ CompressedTexImage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLsizei , GLint , GLsizei , const GLvoid *)>(context->getProcAddress("glCompressedTexImage1D"));
+ CompressedTexImage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLsizei , GLsizei , GLint , GLsizei , const GLvoid *)>(context->getProcAddress("glCompressedTexImage2D"));
+ CompressedTexImage3D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLsizei , GLsizei , GLsizei , GLint , GLsizei , const GLvoid *)>(context->getProcAddress("glCompressedTexImage3D"));
+ SampleCoverage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLboolean )>(context->getProcAddress("glSampleCoverage"));
+ ActiveTexture = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glActiveTexture"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_3_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 3, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_1_4_CoreBackend::QOpenGLFunctions_1_4_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.4 core functions
+ PointParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glPointParameteriv"));
+ PointParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glPointParameteri"));
+ PointParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glPointParameterfv"));
+ PointParameterf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glPointParameterf"));
+ MultiDrawElements = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLsizei *, GLenum , const GLvoid* const *, GLsizei )>(context->getProcAddress("glMultiDrawElements"));
+ MultiDrawArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *, const GLsizei *, GLsizei )>(context->getProcAddress("glMultiDrawArrays"));
+ BlendFuncSeparate = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLenum )>(context->getProcAddress("glBlendFuncSeparate"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_4_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 4, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_1_5_CoreBackend::QOpenGLFunctions_1_5_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.5 core functions
+ GetBufferPointerv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLvoid* *)>(context->getProcAddress("glGetBufferPointerv"));
+ GetBufferParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetBufferParameteriv"));
+ UnmapBuffer = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glUnmapBuffer"));
+ MapBuffer = reinterpret_cast<GLvoid* (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(context->getProcAddress("glMapBuffer"));
+ GetBufferSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLintptr , GLsizeiptr , GLvoid *)>(context->getProcAddress("glGetBufferSubData"));
+ BufferSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLintptr , GLsizeiptr , const GLvoid *)>(context->getProcAddress("glBufferSubData"));
+ BufferData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizeiptr , const GLvoid *, GLenum )>(context->getProcAddress("glBufferData"));
+ IsBuffer = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsBuffer"));
+ GenBuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenBuffers"));
+ DeleteBuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteBuffers"));
+ BindBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBindBuffer"));
+ GetQueryObjectuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint *)>(context->getProcAddress("glGetQueryObjectuiv"));
+ GetQueryObjectiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetQueryObjectiv"));
+ GetQueryiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetQueryiv"));
+ EndQuery = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glEndQuery"));
+ BeginQuery = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBeginQuery"));
+ IsQuery = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsQuery"));
+ DeleteQueries = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteQueries"));
+ GenQueries = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenQueries"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_5_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 5, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_2_0_CoreBackend::QOpenGLFunctions_2_0_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 2.0 core functions
+ VertexAttribPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLenum , GLboolean , GLsizei , const GLvoid *)>(context->getProcAddress("glVertexAttribPointer"));
+ ValidateProgram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glValidateProgram"));
+ UniformMatrix4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix4fv"));
+ UniformMatrix3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix3fv"));
+ UniformMatrix2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix2fv"));
+ Uniform4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLint *)>(context->getProcAddress("glUniform4iv"));
+ Uniform3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLint *)>(context->getProcAddress("glUniform3iv"));
+ Uniform2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLint *)>(context->getProcAddress("glUniform2iv"));
+ Uniform1iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLint *)>(context->getProcAddress("glUniform1iv"));
+ Uniform4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glUniform4fv"));
+ Uniform3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glUniform3fv"));
+ Uniform2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glUniform2fv"));
+ Uniform1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glUniform1fv"));
+ Uniform4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint , GLint )>(context->getProcAddress("glUniform4i"));
+ Uniform3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(context->getProcAddress("glUniform3i"));
+ Uniform2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glUniform2i"));
+ Uniform1i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(context->getProcAddress("glUniform1i"));
+ Uniform4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glUniform4f"));
+ Uniform3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glUniform3f"));
+ Uniform2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat )>(context->getProcAddress("glUniform2f"));
+ Uniform1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat )>(context->getProcAddress("glUniform1f"));
+ UseProgram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glUseProgram"));
+ ShaderSource = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , const GLchar* const *, const GLint *)>(context->getProcAddress("glShaderSource"));
+ LinkProgram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glLinkProgram"));
+ IsShader = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsShader"));
+ IsProgram = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsProgram"));
+ GetVertexAttribPointerv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLvoid* *)>(context->getProcAddress("glGetVertexAttribPointerv"));
+ GetVertexAttribiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetVertexAttribiv"));
+ GetVertexAttribfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLfloat *)>(context->getProcAddress("glGetVertexAttribfv"));
+ GetVertexAttribdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLdouble *)>(context->getProcAddress("glGetVertexAttribdv"));
+ GetUniformiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint *)>(context->getProcAddress("glGetUniformiv"));
+ GetUniformfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat *)>(context->getProcAddress("glGetUniformfv"));
+ GetUniformLocation = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , const GLchar *)>(context->getProcAddress("glGetUniformLocation"));
+ GetShaderSource = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetShaderSource"));
+ GetShaderInfoLog = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetShaderInfoLog"));
+ GetShaderiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetShaderiv"));
+ GetProgramInfoLog = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetProgramInfoLog"));
+ GetProgramiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetProgramiv"));
+ GetAttribLocation = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , const GLchar *)>(context->getProcAddress("glGetAttribLocation"));
+ GetAttachedShaders = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLuint *)>(context->getProcAddress("glGetAttachedShaders"));
+ GetActiveUniform = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLsizei , GLsizei *, GLint *, GLenum *, GLchar *)>(context->getProcAddress("glGetActiveUniform"));
+ GetActiveAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLsizei , GLsizei *, GLint *, GLenum *, GLchar *)>(context->getProcAddress("glGetActiveAttrib"));
+ EnableVertexAttribArray = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glEnableVertexAttribArray"));
+ DisableVertexAttribArray = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glDisableVertexAttribArray"));
+ DetachShader = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glDetachShader"));
+ DeleteShader = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glDeleteShader"));
+ DeleteProgram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glDeleteProgram"));
+ CreateShader = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glCreateShader"));
+ CreateProgram = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glCreateProgram"));
+ CompileShader = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glCompileShader"));
+ BindAttribLocation = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , const GLchar *)>(context->getProcAddress("glBindAttribLocation"));
+ AttachShader = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glAttachShader"));
+ StencilMaskSeparate = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glStencilMaskSeparate"));
+ StencilFuncSeparate = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint , GLuint )>(context->getProcAddress("glStencilFuncSeparate"));
+ StencilOpSeparate = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLenum )>(context->getProcAddress("glStencilOpSeparate"));
+ DrawBuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLenum *)>(context->getProcAddress("glDrawBuffers"));
+ BlendEquationSeparate = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(context->getProcAddress("glBlendEquationSeparate"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_2_0_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(2, 0, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_2_1_CoreBackend::QOpenGLFunctions_2_1_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 2.1 core functions
+ UniformMatrix4x3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix4x3fv"));
+ UniformMatrix3x4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix3x4fv"));
+ UniformMatrix4x2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix4x2fv"));
+ UniformMatrix2x4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix2x4fv"));
+ UniformMatrix3x2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix3x2fv"));
+ UniformMatrix2x3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix2x3fv"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_2_1_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(2, 1, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_3_0_CoreBackend::QOpenGLFunctions_3_0_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 3.0 core functions
+ IsVertexArray = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsVertexArray"));
+ GenVertexArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenVertexArrays"));
+ DeleteVertexArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteVertexArrays"));
+ BindVertexArray = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glBindVertexArray"));
+ FlushMappedBufferRange = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLintptr , GLsizeiptr )>(context->getProcAddress("glFlushMappedBufferRange"));
+ MapBufferRange = reinterpret_cast<GLvoid* (QOPENGLF_APIENTRYP)(GLenum , GLintptr , GLsizeiptr , GLbitfield )>(context->getProcAddress("glMapBufferRange"));
+ FramebufferTextureLayer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLint , GLint )>(context->getProcAddress("glFramebufferTextureLayer"));
+ RenderbufferStorageMultisample = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , GLsizei , GLsizei )>(context->getProcAddress("glRenderbufferStorageMultisample"));
+ BlitFramebuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint , GLint , GLint , GLint , GLint , GLbitfield , GLenum )>(context->getProcAddress("glBlitFramebuffer"));
+ GenerateMipmap = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glGenerateMipmap"));
+ GetFramebufferAttachmentParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLint *)>(context->getProcAddress("glGetFramebufferAttachmentParameteriv"));
+ FramebufferRenderbuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLuint )>(context->getProcAddress("glFramebufferRenderbuffer"));
+ FramebufferTexture3D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLuint , GLint , GLint )>(context->getProcAddress("glFramebufferTexture3D"));
+ FramebufferTexture2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLuint , GLint )>(context->getProcAddress("glFramebufferTexture2D"));
+ FramebufferTexture1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLuint , GLint )>(context->getProcAddress("glFramebufferTexture1D"));
+ CheckFramebufferStatus = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glCheckFramebufferStatus"));
+ GenFramebuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenFramebuffers"));
+ DeleteFramebuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteFramebuffers"));
+ BindFramebuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBindFramebuffer"));
+ IsFramebuffer = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsFramebuffer"));
+ GetRenderbufferParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetRenderbufferParameteriv"));
+ RenderbufferStorage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLsizei )>(context->getProcAddress("glRenderbufferStorage"));
+ GenRenderbuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenRenderbuffers"));
+ DeleteRenderbuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteRenderbuffers"));
+ BindRenderbuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBindRenderbuffer"));
+ IsRenderbuffer = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsRenderbuffer"));
+ GetStringi = reinterpret_cast<const GLubyte * (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glGetStringi"));
+ ClearBufferfi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLfloat , GLint )>(context->getProcAddress("glClearBufferfi"));
+ ClearBufferfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLfloat *)>(context->getProcAddress("glClearBufferfv"));
+ ClearBufferuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLuint *)>(context->getProcAddress("glClearBufferuiv"));
+ ClearBufferiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLint *)>(context->getProcAddress("glClearBufferiv"));
+ GetTexParameterIuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint *)>(context->getProcAddress("glGetTexParameterIuiv"));
+ GetTexParameterIiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetTexParameterIiv"));
+ TexParameterIuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLuint *)>(context->getProcAddress("glTexParameterIuiv"));
+ TexParameterIiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(context->getProcAddress("glTexParameterIiv"));
+ Uniform4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLuint *)>(context->getProcAddress("glUniform4uiv"));
+ Uniform3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLuint *)>(context->getProcAddress("glUniform3uiv"));
+ Uniform2uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLuint *)>(context->getProcAddress("glUniform2uiv"));
+ Uniform1uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLuint *)>(context->getProcAddress("glUniform1uiv"));
+ Uniform4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLuint , GLuint , GLuint , GLuint )>(context->getProcAddress("glUniform4ui"));
+ Uniform3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLuint , GLuint , GLuint )>(context->getProcAddress("glUniform3ui"));
+ Uniform2ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLuint , GLuint )>(context->getProcAddress("glUniform2ui"));
+ Uniform1ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLuint )>(context->getProcAddress("glUniform1ui"));
+ GetFragDataLocation = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , const GLchar *)>(context->getProcAddress("glGetFragDataLocation"));
+ BindFragDataLocation = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , const GLchar *)>(context->getProcAddress("glBindFragDataLocation"));
+ GetUniformuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint *)>(context->getProcAddress("glGetUniformuiv"));
+ GetVertexAttribIuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint *)>(context->getProcAddress("glGetVertexAttribIuiv"));
+ GetVertexAttribIiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetVertexAttribIiv"));
+ VertexAttribIPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glVertexAttribIPointer"));
+ EndConditionalRender = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glEndConditionalRender"));
+ BeginConditionalRender = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glBeginConditionalRender"));
+ ClampColor = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(context->getProcAddress("glClampColor"));
+ GetTransformFeedbackVarying = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLsizei , GLsizei *, GLsizei *, GLenum *, GLchar *)>(context->getProcAddress("glGetTransformFeedbackVarying"));
+ TransformFeedbackVaryings = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , const GLchar* const *, GLenum )>(context->getProcAddress("glTransformFeedbackVaryings"));
+ BindBufferBase = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint )>(context->getProcAddress("glBindBufferBase"));
+ BindBufferRange = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint , GLintptr , GLsizeiptr )>(context->getProcAddress("glBindBufferRange"));
+ EndTransformFeedback = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glEndTransformFeedback"));
+ BeginTransformFeedback = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glBeginTransformFeedback"));
+ IsEnabledi = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glIsEnabledi"));
+ Disablei = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glDisablei"));
+ Enablei = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glEnablei"));
+ GetIntegeri_v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLint *)>(context->getProcAddress("glGetIntegeri_v"));
+ GetBooleani_v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLboolean *)>(context->getProcAddress("glGetBooleani_v"));
+ ColorMaski = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLboolean , GLboolean , GLboolean , GLboolean )>(context->getProcAddress("glColorMaski"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_3_0_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(3, 0, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_3_1_CoreBackend::QOpenGLFunctions_3_1_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 3.1 core functions
+ CopyBufferSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLintptr , GLintptr , GLsizeiptr )>(context->getProcAddress("glCopyBufferSubData"));
+ UniformBlockBinding = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(context->getProcAddress("glUniformBlockBinding"));
+ GetActiveUniformBlockName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetActiveUniformBlockName"));
+ GetActiveUniformBlockiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLenum , GLint *)>(context->getProcAddress("glGetActiveUniformBlockiv"));
+ GetUniformBlockIndex = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLuint , const GLchar *)>(context->getProcAddress("glGetUniformBlockIndex"));
+ GetActiveUniformName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetActiveUniformName"));
+ GetActiveUniformsiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , const GLuint *, GLenum , GLint *)>(context->getProcAddress("glGetActiveUniformsiv"));
+ GetUniformIndices = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , const GLchar* const *, GLuint *)>(context->getProcAddress("glGetUniformIndices"));
+ PrimitiveRestartIndex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glPrimitiveRestartIndex"));
+ TexBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint )>(context->getProcAddress("glTexBuffer"));
+ DrawElementsInstanced = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const GLvoid *, GLsizei )>(context->getProcAddress("glDrawElementsInstanced"));
+ DrawArraysInstanced = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLsizei , GLsizei )>(context->getProcAddress("glDrawArraysInstanced"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_3_1_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(3, 1, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_3_2_CoreBackend::QOpenGLFunctions_3_2_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 3.2 core functions
+ SampleMaski = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLbitfield )>(context->getProcAddress("glSampleMaski"));
+ GetMultisamplefv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLfloat *)>(context->getProcAddress("glGetMultisamplefv"));
+ TexImage3DMultisample = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLint , GLsizei , GLsizei , GLsizei , GLboolean )>(context->getProcAddress("glTexImage3DMultisample"));
+ TexImage2DMultisample = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLint , GLsizei , GLsizei , GLboolean )>(context->getProcAddress("glTexImage2DMultisample"));
+ GetSynciv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsync , GLenum , GLsizei , GLsizei *, GLint *)>(context->getProcAddress("glGetSynciv"));
+ GetInteger64v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint64 *)>(context->getProcAddress("glGetInteger64v"));
+ WaitSync = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsync , GLbitfield , GLuint64 )>(context->getProcAddress("glWaitSync"));
+ ClientWaitSync = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)(GLsync , GLbitfield , GLuint64 )>(context->getProcAddress("glClientWaitSync"));
+ DeleteSync = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsync )>(context->getProcAddress("glDeleteSync"));
+ IsSync = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLsync )>(context->getProcAddress("glIsSync"));
+ FenceSync = reinterpret_cast<GLsync (QOPENGLF_APIENTRYP)(GLenum , GLbitfield )>(context->getProcAddress("glFenceSync"));
+ ProvokingVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glProvokingVertex"));
+ MultiDrawElementsBaseVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLsizei *, GLenum , const GLvoid* const *, GLsizei , const GLint *)>(context->getProcAddress("glMultiDrawElementsBaseVertex"));
+ DrawElementsInstancedBaseVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const GLvoid *, GLsizei , GLint )>(context->getProcAddress("glDrawElementsInstancedBaseVertex"));
+ DrawRangeElementsBaseVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint , GLsizei , GLenum , const GLvoid *, GLint )>(context->getProcAddress("glDrawRangeElementsBaseVertex"));
+ DrawElementsBaseVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const GLvoid *, GLint )>(context->getProcAddress("glDrawElementsBaseVertex"));
+ FramebufferTexture = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLint )>(context->getProcAddress("glFramebufferTexture"));
+ GetBufferParameteri64v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint64 *)>(context->getProcAddress("glGetBufferParameteri64v"));
+ GetInteger64i_v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLint64 *)>(context->getProcAddress("glGetInteger64i_v"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_3_2_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(3, 2, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_3_3_CoreBackend::QOpenGLFunctions_3_3_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 3.3 core functions
+ VertexAttribP4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLboolean , const GLuint *)>(context->getProcAddress("glVertexAttribP4uiv"));
+ VertexAttribP4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLboolean , GLuint )>(context->getProcAddress("glVertexAttribP4ui"));
+ VertexAttribP3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLboolean , const GLuint *)>(context->getProcAddress("glVertexAttribP3uiv"));
+ VertexAttribP3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLboolean , GLuint )>(context->getProcAddress("glVertexAttribP3ui"));
+ VertexAttribP2uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLboolean , const GLuint *)>(context->getProcAddress("glVertexAttribP2uiv"));
+ VertexAttribP2ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLboolean , GLuint )>(context->getProcAddress("glVertexAttribP2ui"));
+ VertexAttribP1uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLboolean , const GLuint *)>(context->getProcAddress("glVertexAttribP1uiv"));
+ VertexAttribP1ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLboolean , GLuint )>(context->getProcAddress("glVertexAttribP1ui"));
+ SecondaryColorP3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glSecondaryColorP3uiv"));
+ SecondaryColorP3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glSecondaryColorP3ui"));
+ ColorP4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glColorP4uiv"));
+ ColorP4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glColorP4ui"));
+ ColorP3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glColorP3uiv"));
+ ColorP3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glColorP3ui"));
+ NormalP3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glNormalP3uiv"));
+ NormalP3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glNormalP3ui"));
+ MultiTexCoordP4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLuint *)>(context->getProcAddress("glMultiTexCoordP4uiv"));
+ MultiTexCoordP4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint )>(context->getProcAddress("glMultiTexCoordP4ui"));
+ MultiTexCoordP3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLuint *)>(context->getProcAddress("glMultiTexCoordP3uiv"));
+ MultiTexCoordP3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint )>(context->getProcAddress("glMultiTexCoordP3ui"));
+ MultiTexCoordP2uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLuint *)>(context->getProcAddress("glMultiTexCoordP2uiv"));
+ MultiTexCoordP2ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint )>(context->getProcAddress("glMultiTexCoordP2ui"));
+ MultiTexCoordP1uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLuint *)>(context->getProcAddress("glMultiTexCoordP1uiv"));
+ MultiTexCoordP1ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint )>(context->getProcAddress("glMultiTexCoordP1ui"));
+ TexCoordP4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glTexCoordP4uiv"));
+ TexCoordP4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glTexCoordP4ui"));
+ TexCoordP3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glTexCoordP3uiv"));
+ TexCoordP3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glTexCoordP3ui"));
+ TexCoordP2uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glTexCoordP2uiv"));
+ TexCoordP2ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glTexCoordP2ui"));
+ TexCoordP1uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glTexCoordP1uiv"));
+ TexCoordP1ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glTexCoordP1ui"));
+ VertexP4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glVertexP4uiv"));
+ VertexP4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glVertexP4ui"));
+ VertexP3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glVertexP3uiv"));
+ VertexP3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glVertexP3ui"));
+ VertexP2uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLuint *)>(context->getProcAddress("glVertexP2uiv"));
+ VertexP2ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glVertexP2ui"));
+ GetQueryObjectui64v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint64 *)>(context->getProcAddress("glGetQueryObjectui64v"));
+ GetQueryObjecti64v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint64 *)>(context->getProcAddress("glGetQueryObjecti64v"));
+ QueryCounter = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glQueryCounter"));
+ GetSamplerParameterIuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint *)>(context->getProcAddress("glGetSamplerParameterIuiv"));
+ GetSamplerParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLfloat *)>(context->getProcAddress("glGetSamplerParameterfv"));
+ GetSamplerParameterIiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetSamplerParameterIiv"));
+ GetSamplerParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetSamplerParameteriv"));
+ SamplerParameterIuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLuint *)>(context->getProcAddress("glSamplerParameterIuiv"));
+ SamplerParameterIiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLint *)>(context->getProcAddress("glSamplerParameterIiv"));
+ SamplerParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLfloat *)>(context->getProcAddress("glSamplerParameterfv"));
+ SamplerParameterf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLfloat )>(context->getProcAddress("glSamplerParameterf"));
+ SamplerParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLint *)>(context->getProcAddress("glSamplerParameteriv"));
+ SamplerParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint )>(context->getProcAddress("glSamplerParameteri"));
+ BindSampler = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glBindSampler"));
+ IsSampler = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsSampler"));
+ DeleteSamplers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteSamplers"));
+ GenSamplers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenSamplers"));
+ GetFragDataIndex = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , const GLchar *)>(context->getProcAddress("glGetFragDataIndex"));
+ BindFragDataLocationIndexed = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint , const GLchar *)>(context->getProcAddress("glBindFragDataLocationIndexed"));
+ VertexAttribDivisor = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glVertexAttribDivisor"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_3_3_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(3, 3, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_4_0_CoreBackend::QOpenGLFunctions_4_0_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 4.0 core functions
+ GetQueryIndexediv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLenum , GLint *)>(context->getProcAddress("glGetQueryIndexediv"));
+ EndQueryIndexed = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glEndQueryIndexed"));
+ BeginQueryIndexed = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint )>(context->getProcAddress("glBeginQueryIndexed"));
+ DrawTransformFeedbackStream = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint )>(context->getProcAddress("glDrawTransformFeedbackStream"));
+ DrawTransformFeedback = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glDrawTransformFeedback"));
+ ResumeTransformFeedback = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glResumeTransformFeedback"));
+ PauseTransformFeedback = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glPauseTransformFeedback"));
+ IsTransformFeedback = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsTransformFeedback"));
+ GenTransformFeedbacks = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenTransformFeedbacks"));
+ DeleteTransformFeedbacks = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteTransformFeedbacks"));
+ BindTransformFeedback = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBindTransformFeedback"));
+ PatchParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glPatchParameterfv"));
+ PatchParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glPatchParameteri"));
+ GetProgramStageiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum , GLint *)>(context->getProcAddress("glGetProgramStageiv"));
+ GetUniformSubroutineuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLuint *)>(context->getProcAddress("glGetUniformSubroutineuiv"));
+ UniformSubroutinesuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLuint *)>(context->getProcAddress("glUniformSubroutinesuiv"));
+ GetActiveSubroutineName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetActiveSubroutineName"));
+ GetActiveSubroutineUniformName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetActiveSubroutineUniformName"));
+ GetActiveSubroutineUniformiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLenum , GLint *)>(context->getProcAddress("glGetActiveSubroutineUniformiv"));
+ GetSubroutineIndex = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetSubroutineIndex"));
+ GetSubroutineUniformLocation = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetSubroutineUniformLocation"));
+ GetUniformdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble *)>(context->getProcAddress("glGetUniformdv"));
+ UniformMatrix4x3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix4x3dv"));
+ UniformMatrix4x2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix4x2dv"));
+ UniformMatrix3x4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix3x4dv"));
+ UniformMatrix3x2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix3x2dv"));
+ UniformMatrix2x4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix2x4dv"));
+ UniformMatrix2x3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix2x3dv"));
+ UniformMatrix4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix4dv"));
+ UniformMatrix3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix3dv"));
+ UniformMatrix2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix2dv"));
+ Uniform4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glUniform4dv"));
+ Uniform3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glUniform3dv"));
+ Uniform2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glUniform2dv"));
+ Uniform1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glUniform1dv"));
+ Uniform4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glUniform4d"));
+ Uniform3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glUniform3d"));
+ Uniform2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble )>(context->getProcAddress("glUniform2d"));
+ Uniform1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble )>(context->getProcAddress("glUniform1d"));
+ DrawElementsIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glDrawElementsIndirect"));
+ DrawArraysIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLvoid *)>(context->getProcAddress("glDrawArraysIndirect"));
+ BlendFuncSeparatei = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum , GLenum , GLenum )>(context->getProcAddress("glBlendFuncSeparatei"));
+ BlendFunci = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum )>(context->getProcAddress("glBlendFunci"));
+ BlendEquationSeparatei = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum )>(context->getProcAddress("glBlendEquationSeparatei"));
+ BlendEquationi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glBlendEquationi"));
+ MinSampleShading = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glMinSampleShading"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_4_0_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(4, 0, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_4_1_CoreBackend::QOpenGLFunctions_4_1_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 4.1 core functions
+ GetDoublei_v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLdouble *)>(context->getProcAddress("glGetDoublei_v"));
+ GetFloati_v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLfloat *)>(context->getProcAddress("glGetFloati_v"));
+ DepthRangeIndexed = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble , GLdouble )>(context->getProcAddress("glDepthRangeIndexed"));
+ DepthRangeArrayv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , const GLdouble *)>(context->getProcAddress("glDepthRangeArrayv"));
+ ScissorIndexedv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLint *)>(context->getProcAddress("glScissorIndexedv"));
+ ScissorIndexed = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLsizei , GLsizei )>(context->getProcAddress("glScissorIndexed"));
+ ScissorArrayv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , const GLint *)>(context->getProcAddress("glScissorArrayv"));
+ ViewportIndexedfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLfloat *)>(context->getProcAddress("glViewportIndexedfv"));
+ ViewportIndexedf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glViewportIndexedf"));
+ ViewportArrayv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , const GLfloat *)>(context->getProcAddress("glViewportArrayv"));
+ GetVertexAttribLdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLdouble *)>(context->getProcAddress("glGetVertexAttribLdv"));
+ VertexAttribLPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glVertexAttribLPointer"));
+ VertexAttribL4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLdouble *)>(context->getProcAddress("glVertexAttribL4dv"));
+ VertexAttribL3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLdouble *)>(context->getProcAddress("glVertexAttribL3dv"));
+ VertexAttribL2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLdouble *)>(context->getProcAddress("glVertexAttribL2dv"));
+ VertexAttribL1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLdouble *)>(context->getProcAddress("glVertexAttribL1dv"));
+ VertexAttribL4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glVertexAttribL4d"));
+ VertexAttribL3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glVertexAttribL3d"));
+ VertexAttribL2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble , GLdouble )>(context->getProcAddress("glVertexAttribL2d"));
+ VertexAttribL1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble )>(context->getProcAddress("glVertexAttribL1d"));
+ GetProgramPipelineInfoLog = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetProgramPipelineInfoLog"));
+ ValidateProgramPipeline = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glValidateProgramPipeline"));
+ ProgramUniformMatrix4x3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix4x3dv"));
+ ProgramUniformMatrix3x4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix3x4dv"));
+ ProgramUniformMatrix4x2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix4x2dv"));
+ ProgramUniformMatrix2x4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix2x4dv"));
+ ProgramUniformMatrix3x2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix3x2dv"));
+ ProgramUniformMatrix2x3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix2x3dv"));
+ ProgramUniformMatrix4x3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix4x3fv"));
+ ProgramUniformMatrix3x4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix3x4fv"));
+ ProgramUniformMatrix4x2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix4x2fv"));
+ ProgramUniformMatrix2x4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix2x4fv"));
+ ProgramUniformMatrix3x2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix3x2fv"));
+ ProgramUniformMatrix2x3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix2x3fv"));
+ ProgramUniformMatrix4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix4dv"));
+ ProgramUniformMatrix3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix3dv"));
+ ProgramUniformMatrix2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix2dv"));
+ ProgramUniformMatrix4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix4fv"));
+ ProgramUniformMatrix3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix3fv"));
+ ProgramUniformMatrix2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix2fv"));
+ ProgramUniform4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLuint *)>(context->getProcAddress("glProgramUniform4uiv"));
+ ProgramUniform4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint , GLuint , GLuint , GLuint )>(context->getProcAddress("glProgramUniform4ui"));
+ ProgramUniform4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glProgramUniform4dv"));
+ ProgramUniform4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glProgramUniform4d"));
+ ProgramUniform4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glProgramUniform4fv"));
+ ProgramUniform4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glProgramUniform4f"));
+ ProgramUniform4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLint *)>(context->getProcAddress("glProgramUniform4iv"));
+ ProgramUniform4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint , GLint , GLint )>(context->getProcAddress("glProgramUniform4i"));
+ ProgramUniform3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLuint *)>(context->getProcAddress("glProgramUniform3uiv"));
+ ProgramUniform3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint , GLuint , GLuint )>(context->getProcAddress("glProgramUniform3ui"));
+ ProgramUniform3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glProgramUniform3dv"));
+ ProgramUniform3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glProgramUniform3d"));
+ ProgramUniform3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glProgramUniform3fv"));
+ ProgramUniform3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glProgramUniform3f"));
+ ProgramUniform3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLint *)>(context->getProcAddress("glProgramUniform3iv"));
+ ProgramUniform3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint , GLint )>(context->getProcAddress("glProgramUniform3i"));
+ ProgramUniform2uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLuint *)>(context->getProcAddress("glProgramUniform2uiv"));
+ ProgramUniform2ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint , GLuint )>(context->getProcAddress("glProgramUniform2ui"));
+ ProgramUniform2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glProgramUniform2dv"));
+ ProgramUniform2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble , GLdouble )>(context->getProcAddress("glProgramUniform2d"));
+ ProgramUniform2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glProgramUniform2fv"));
+ ProgramUniform2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat , GLfloat )>(context->getProcAddress("glProgramUniform2f"));
+ ProgramUniform2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLint *)>(context->getProcAddress("glProgramUniform2iv"));
+ ProgramUniform2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint )>(context->getProcAddress("glProgramUniform2i"));
+ ProgramUniform1uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLuint *)>(context->getProcAddress("glProgramUniform1uiv"));
+ ProgramUniform1ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint )>(context->getProcAddress("glProgramUniform1ui"));
+ ProgramUniform1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glProgramUniform1dv"));
+ ProgramUniform1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble )>(context->getProcAddress("glProgramUniform1d"));
+ ProgramUniform1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glProgramUniform1fv"));
+ ProgramUniform1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat )>(context->getProcAddress("glProgramUniform1f"));
+ ProgramUniform1iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLint *)>(context->getProcAddress("glProgramUniform1iv"));
+ ProgramUniform1i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint )>(context->getProcAddress("glProgramUniform1i"));
+ GetProgramPipelineiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetProgramPipelineiv"));
+ IsProgramPipeline = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsProgramPipeline"));
+ GenProgramPipelines = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenProgramPipelines"));
+ DeleteProgramPipelines = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteProgramPipelines"));
+ BindProgramPipeline = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glBindProgramPipeline"));
+ CreateShaderProgramv = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLchar* const *)>(context->getProcAddress("glCreateShaderProgramv"));
+ ActiveShaderProgram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glActiveShaderProgram"));
+ UseProgramStages = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLbitfield , GLuint )>(context->getProcAddress("glUseProgramStages"));
+ ProgramParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint )>(context->getProcAddress("glProgramParameteri"));
+ ProgramBinary = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLvoid *, GLsizei )>(context->getProcAddress("glProgramBinary"));
+ GetProgramBinary = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLenum *, GLvoid *)>(context->getProcAddress("glGetProgramBinary"));
+ ClearDepthf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glClearDepthf"));
+ DepthRangef = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glDepthRangef"));
+ GetShaderPrecisionFormat = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *, GLint *)>(context->getProcAddress("glGetShaderPrecisionFormat"));
+ ShaderBinary = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *, GLenum , const GLvoid *, GLsizei )>(context->getProcAddress("glShaderBinary"));
+ ReleaseShaderCompiler = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glReleaseShaderCompiler"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_4_1_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(4, 1, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_4_2_CoreBackend::QOpenGLFunctions_4_2_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 4.2 core functions
+ TexStorage3D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , GLsizei , GLsizei , GLsizei )>(context->getProcAddress("glTexStorage3D"));
+ TexStorage2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , GLsizei , GLsizei )>(context->getProcAddress("glTexStorage2D"));
+ TexStorage1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , GLsizei )>(context->getProcAddress("glTexStorage1D"));
+ MemoryBarrier = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbitfield )>(context->getProcAddress("glMemoryBarrier"));
+ BindImageTexture = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLint , GLboolean , GLint , GLenum , GLenum )>(context->getProcAddress("glBindImageTexture"));
+ GetActiveAtomicCounterBufferiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLenum , GLint *)>(context->getProcAddress("glGetActiveAtomicCounterBufferiv"));
+ GetInternalformativ = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLsizei , GLint *)>(context->getProcAddress("glGetInternalformativ"));
+ DrawTransformFeedbackStreamInstanced = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint , GLsizei )>(context->getProcAddress("glDrawTransformFeedbackStreamInstanced"));
+ DrawTransformFeedbackInstanced = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLsizei )>(context->getProcAddress("glDrawTransformFeedbackInstanced"));
+ DrawElementsInstancedBaseVertexBaseInstance = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const void *, GLsizei , GLint , GLuint )>(context->getProcAddress("glDrawElementsInstancedBaseVertexBaseInstance"));
+ DrawElementsInstancedBaseInstance = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const void *, GLsizei , GLuint )>(context->getProcAddress("glDrawElementsInstancedBaseInstance"));
+ DrawArraysInstancedBaseInstance = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLsizei , GLsizei , GLuint )>(context->getProcAddress("glDrawArraysInstancedBaseInstance"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_4_2_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(4, 2, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_4_3_CoreBackend::QOpenGLFunctions_4_3_CoreBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 4.3 core functions
+ TexStorage3DMultisample = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , GLsizei , GLsizei , GLsizei , GLboolean )>(context->getProcAddress("glTexStorage3DMultisample"));
+ TexStorage2DMultisample = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , GLsizei , GLsizei , GLboolean )>(context->getProcAddress("glTexStorage2DMultisample"));
+ TexBufferRange = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLintptr , GLsizeiptr )>(context->getProcAddress("glTexBufferRange"));
+ ShaderStorageBlockBinding = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(context->getProcAddress("glShaderStorageBlockBinding"));
+ GetProgramResourceLocationIndex = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetProgramResourceLocationIndex"));
+ GetProgramResourceLocation = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetProgramResourceLocation"));
+ GetProgramResourceiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLsizei , const GLenum *, GLsizei , GLsizei *, GLint *)>(context->getProcAddress("glGetProgramResourceiv"));
+ GetProgramResourceName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetProgramResourceName"));
+ GetProgramResourceIndex = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetProgramResourceIndex"));
+ GetProgramInterfaceiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum , GLint *)>(context->getProcAddress("glGetProgramInterfaceiv"));
+ MultiDrawElementsIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const void *, GLsizei , GLsizei )>(context->getProcAddress("glMultiDrawElementsIndirect"));
+ MultiDrawArraysIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const void *, GLsizei , GLsizei )>(context->getProcAddress("glMultiDrawArraysIndirect"));
+ InvalidateSubFramebuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLenum *, GLint , GLint , GLsizei , GLsizei )>(context->getProcAddress("glInvalidateSubFramebuffer"));
+ InvalidateFramebuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLenum *)>(context->getProcAddress("glInvalidateFramebuffer"));
+ InvalidateBufferData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glInvalidateBufferData"));
+ InvalidateBufferSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLintptr , GLsizeiptr )>(context->getProcAddress("glInvalidateBufferSubData"));
+ InvalidateTexImage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint )>(context->getProcAddress("glInvalidateTexImage"));
+ InvalidateTexSubImage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei )>(context->getProcAddress("glInvalidateTexSubImage"));
+ GetInternalformati64v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLsizei , GLint64 *)>(context->getProcAddress("glGetInternalformati64v"));
+ GetFramebufferParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetFramebufferParameteriv"));
+ FramebufferParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glFramebufferParameteri"));
+ VertexBindingDivisor = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glVertexBindingDivisor"));
+ VertexAttribBinding = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glVertexAttribBinding"));
+ VertexAttribLFormat = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLenum , GLuint )>(context->getProcAddress("glVertexAttribLFormat"));
+ VertexAttribIFormat = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLenum , GLuint )>(context->getProcAddress("glVertexAttribIFormat"));
+ VertexAttribFormat = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLenum , GLboolean , GLuint )>(context->getProcAddress("glVertexAttribFormat"));
+ BindVertexBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLintptr , GLsizei )>(context->getProcAddress("glBindVertexBuffer"));
+ TextureView = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLenum , GLuint , GLuint , GLuint , GLuint )>(context->getProcAddress("glTextureView"));
+ CopyImageSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint , GLint , GLint , GLint , GLuint , GLenum , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei )>(context->getProcAddress("glCopyImageSubData"));
+ DispatchComputeIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLintptr )>(context->getProcAddress("glDispatchComputeIndirect"));
+ DispatchCompute = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(context->getProcAddress("glDispatchCompute"));
+ ClearBufferSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLintptr , GLsizeiptr , GLenum , GLenum , const void *)>(context->getProcAddress("glClearBufferSubData"));
+ ClearBufferData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLenum , const void *)>(context->getProcAddress("glClearBufferData"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_4_3_CoreBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(4, 3, QOpenGLVersionStatus::CoreStatus);
+}
+
+QOpenGLFunctions_1_0_DeprecatedBackend::QOpenGLFunctions_1_0_DeprecatedBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.0 deprecated functions
+#if defined(Q_OS_WIN)
+ HMODULE handle = GetModuleHandleA("opengl32.dll");
+ Translatef = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glTranslatef"));
+ Translated = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glTranslated"));
+ Scalef = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glScalef"));
+ Scaled = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glScaled"));
+ Rotatef = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glRotatef"));
+ Rotated = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glRotated"));
+ PushMatrix = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glPushMatrix"));
+ PopMatrix = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glPopMatrix"));
+ Ortho = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glOrtho"));
+ MultMatrixd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glMultMatrixd"));
+ MultMatrixf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glMultMatrixf"));
+ MatrixMode = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glMatrixMode"));
+ LoadMatrixd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glLoadMatrixd"));
+ LoadMatrixf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glLoadMatrixf"));
+ LoadIdentity = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glLoadIdentity"));
+ Frustum = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glFrustum"));
+ IsList = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(GetProcAddress(handle, "glIsList"));
+ GetTexGeniv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(GetProcAddress(handle, "glGetTexGeniv"));
+ GetTexGenfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(GetProcAddress(handle, "glGetTexGenfv"));
+ GetTexGendv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLdouble *)>(GetProcAddress(handle, "glGetTexGendv"));
+ GetTexEnviv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(GetProcAddress(handle, "glGetTexEnviv"));
+ GetTexEnvfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(GetProcAddress(handle, "glGetTexEnvfv"));
+ GetPolygonStipple = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte *)>(GetProcAddress(handle, "glGetPolygonStipple"));
+ GetPixelMapusv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLushort *)>(GetProcAddress(handle, "glGetPixelMapusv"));
+ GetPixelMapuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint *)>(GetProcAddress(handle, "glGetPixelMapuiv"));
+ GetPixelMapfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat *)>(GetProcAddress(handle, "glGetPixelMapfv"));
+ GetMaterialiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(GetProcAddress(handle, "glGetMaterialiv"));
+ GetMaterialfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(GetProcAddress(handle, "glGetMaterialfv"));
+ GetMapiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(GetProcAddress(handle, "glGetMapiv"));
+ GetMapfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(GetProcAddress(handle, "glGetMapfv"));
+ GetMapdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLdouble *)>(GetProcAddress(handle, "glGetMapdv"));
+ GetLightiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(GetProcAddress(handle, "glGetLightiv"));
+ GetLightfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(GetProcAddress(handle, "glGetLightfv"));
+ GetClipPlane = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble *)>(GetProcAddress(handle, "glGetClipPlane"));
+ DrawPixels = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLsizei , GLenum , GLenum , const GLvoid *)>(GetProcAddress(handle, "glDrawPixels"));
+ CopyPixels = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei , GLenum )>(GetProcAddress(handle, "glCopyPixels"));
+ PixelMapusv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLushort *)>(GetProcAddress(handle, "glPixelMapusv"));
+ PixelMapuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLuint *)>(GetProcAddress(handle, "glPixelMapuiv"));
+ PixelMapfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLfloat *)>(GetProcAddress(handle, "glPixelMapfv"));
+ PixelTransferi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(GetProcAddress(handle, "glPixelTransferi"));
+ PixelTransferf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(GetProcAddress(handle, "glPixelTransferf"));
+ PixelZoom = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(GetProcAddress(handle, "glPixelZoom"));
+ AlphaFunc = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(GetProcAddress(handle, "glAlphaFunc"));
+ EvalPoint2 = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(GetProcAddress(handle, "glEvalPoint2"));
+ EvalMesh2 = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint )>(GetProcAddress(handle, "glEvalMesh2"));
+ EvalPoint1 = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(GetProcAddress(handle, "glEvalPoint1"));
+ EvalMesh1 = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint )>(GetProcAddress(handle, "glEvalMesh1"));
+ EvalCoord2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glEvalCoord2fv"));
+ EvalCoord2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(GetProcAddress(handle, "glEvalCoord2f"));
+ EvalCoord2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glEvalCoord2dv"));
+ EvalCoord2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(GetProcAddress(handle, "glEvalCoord2d"));
+ EvalCoord1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glEvalCoord1fv"));
+ EvalCoord1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(GetProcAddress(handle, "glEvalCoord1f"));
+ EvalCoord1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glEvalCoord1dv"));
+ EvalCoord1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(GetProcAddress(handle, "glEvalCoord1d"));
+ MapGrid2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat , GLint , GLfloat , GLfloat )>(GetProcAddress(handle, "glMapGrid2f"));
+ MapGrid2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble , GLint , GLdouble , GLdouble )>(GetProcAddress(handle, "glMapGrid2d"));
+ MapGrid1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat )>(GetProcAddress(handle, "glMapGrid1f"));
+ MapGrid1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble )>(GetProcAddress(handle, "glMapGrid1d"));
+ Map2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat , GLint , GLint , GLfloat , GLfloat , GLint , GLint , const GLfloat *)>(GetProcAddress(handle, "glMap2f"));
+ Map2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble , GLint , GLint , GLdouble , GLdouble , GLint , GLint , const GLdouble *)>(GetProcAddress(handle, "glMap2d"));
+ Map1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat , GLint , GLint , const GLfloat *)>(GetProcAddress(handle, "glMap1f"));
+ Map1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble , GLint , GLint , const GLdouble *)>(GetProcAddress(handle, "glMap1d"));
+ PushAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbitfield )>(GetProcAddress(handle, "glPushAttrib"));
+ PopAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glPopAttrib"));
+ Accum = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(GetProcAddress(handle, "glAccum"));
+ IndexMask = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(GetProcAddress(handle, "glIndexMask"));
+ ClearIndex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(GetProcAddress(handle, "glClearIndex"));
+ ClearAccum = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glClearAccum"));
+ PushName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(GetProcAddress(handle, "glPushName"));
+ PopName = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glPopName"));
+ PassThrough = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(GetProcAddress(handle, "glPassThrough"));
+ LoadName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(GetProcAddress(handle, "glLoadName"));
+ InitNames = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glInitNames"));
+ RenderMode = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glRenderMode"));
+ SelectBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(GetProcAddress(handle, "glSelectBuffer"));
+ FeedbackBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLenum , GLfloat *)>(GetProcAddress(handle, "glFeedbackBuffer"));
+ TexGeniv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(GetProcAddress(handle, "glTexGeniv"));
+ TexGeni = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(GetProcAddress(handle, "glTexGeni"));
+ TexGenfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(GetProcAddress(handle, "glTexGenfv"));
+ TexGenf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(GetProcAddress(handle, "glTexGenf"));
+ TexGendv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLdouble *)>(GetProcAddress(handle, "glTexGendv"));
+ TexGend = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLdouble )>(GetProcAddress(handle, "glTexGend"));
+ TexEnviv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(GetProcAddress(handle, "glTexEnviv"));
+ TexEnvi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(GetProcAddress(handle, "glTexEnvi"));
+ TexEnvfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(GetProcAddress(handle, "glTexEnvfv"));
+ TexEnvf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(GetProcAddress(handle, "glTexEnvf"));
+ ShadeModel = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glShadeModel"));
+ PolygonStipple = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(GetProcAddress(handle, "glPolygonStipple"));
+ Materialiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(GetProcAddress(handle, "glMaterialiv"));
+ Materiali = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(GetProcAddress(handle, "glMateriali"));
+ Materialfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(GetProcAddress(handle, "glMaterialfv"));
+ Materialf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(GetProcAddress(handle, "glMaterialf"));
+ LineStipple = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLushort )>(GetProcAddress(handle, "glLineStipple"));
+ LightModeliv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(GetProcAddress(handle, "glLightModeliv"));
+ LightModeli = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(GetProcAddress(handle, "glLightModeli"));
+ LightModelfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(GetProcAddress(handle, "glLightModelfv"));
+ LightModelf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(GetProcAddress(handle, "glLightModelf"));
+ Lightiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(GetProcAddress(handle, "glLightiv"));
+ Lighti = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(GetProcAddress(handle, "glLighti"));
+ Lightfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(GetProcAddress(handle, "glLightfv"));
+ Lightf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(GetProcAddress(handle, "glLightf"));
+ Fogiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(GetProcAddress(handle, "glFogiv"));
+ Fogi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(GetProcAddress(handle, "glFogi"));
+ Fogfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(GetProcAddress(handle, "glFogfv"));
+ Fogf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(GetProcAddress(handle, "glFogf"));
+ ColorMaterial = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(GetProcAddress(handle, "glColorMaterial"));
+ ClipPlane = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(GetProcAddress(handle, "glClipPlane"));
+ Vertex4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glVertex4sv"));
+ Vertex4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glVertex4s"));
+ Vertex4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glVertex4iv"));
+ Vertex4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(GetProcAddress(handle, "glVertex4i"));
+ Vertex4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glVertex4fv"));
+ Vertex4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glVertex4f"));
+ Vertex4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glVertex4dv"));
+ Vertex4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glVertex4d"));
+ Vertex3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glVertex3sv"));
+ Vertex3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glVertex3s"));
+ Vertex3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glVertex3iv"));
+ Vertex3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(GetProcAddress(handle, "glVertex3i"));
+ Vertex3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glVertex3fv"));
+ Vertex3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glVertex3f"));
+ Vertex3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glVertex3dv"));
+ Vertex3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glVertex3d"));
+ Vertex2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glVertex2sv"));
+ Vertex2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort )>(GetProcAddress(handle, "glVertex2s"));
+ Vertex2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glVertex2iv"));
+ Vertex2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(GetProcAddress(handle, "glVertex2i"));
+ Vertex2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glVertex2fv"));
+ Vertex2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(GetProcAddress(handle, "glVertex2f"));
+ Vertex2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glVertex2dv"));
+ Vertex2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(GetProcAddress(handle, "glVertex2d"));
+ TexCoord4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glTexCoord4sv"));
+ TexCoord4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glTexCoord4s"));
+ TexCoord4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glTexCoord4iv"));
+ TexCoord4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(GetProcAddress(handle, "glTexCoord4i"));
+ TexCoord4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glTexCoord4fv"));
+ TexCoord4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glTexCoord4f"));
+ TexCoord4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glTexCoord4dv"));
+ TexCoord4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glTexCoord4d"));
+ TexCoord3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glTexCoord3sv"));
+ TexCoord3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glTexCoord3s"));
+ TexCoord3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glTexCoord3iv"));
+ TexCoord3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(GetProcAddress(handle, "glTexCoord3i"));
+ TexCoord3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glTexCoord3fv"));
+ TexCoord3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glTexCoord3f"));
+ TexCoord3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glTexCoord3dv"));
+ TexCoord3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glTexCoord3d"));
+ TexCoord2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glTexCoord2sv"));
+ TexCoord2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort )>(GetProcAddress(handle, "glTexCoord2s"));
+ TexCoord2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glTexCoord2iv"));
+ TexCoord2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(GetProcAddress(handle, "glTexCoord2i"));
+ TexCoord2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glTexCoord2fv"));
+ TexCoord2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(GetProcAddress(handle, "glTexCoord2f"));
+ TexCoord2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glTexCoord2dv"));
+ TexCoord2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(GetProcAddress(handle, "glTexCoord2d"));
+ TexCoord1sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glTexCoord1sv"));
+ TexCoord1s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort )>(GetProcAddress(handle, "glTexCoord1s"));
+ TexCoord1iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glTexCoord1iv"));
+ TexCoord1i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(GetProcAddress(handle, "glTexCoord1i"));
+ TexCoord1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glTexCoord1fv"));
+ TexCoord1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(GetProcAddress(handle, "glTexCoord1f"));
+ TexCoord1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glTexCoord1dv"));
+ TexCoord1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(GetProcAddress(handle, "glTexCoord1d"));
+ Rectsv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *, const GLshort *)>(GetProcAddress(handle, "glRectsv"));
+ Rects = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glRects"));
+ Rectiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *, const GLint *)>(GetProcAddress(handle, "glRectiv"));
+ Recti = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(GetProcAddress(handle, "glRecti"));
+ Rectfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *, const GLfloat *)>(GetProcAddress(handle, "glRectfv"));
+ Rectf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glRectf"));
+ Rectdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *, const GLdouble *)>(GetProcAddress(handle, "glRectdv"));
+ Rectd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glRectd"));
+ RasterPos4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glRasterPos4sv"));
+ RasterPos4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glRasterPos4s"));
+ RasterPos4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glRasterPos4iv"));
+ RasterPos4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(GetProcAddress(handle, "glRasterPos4i"));
+ RasterPos4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glRasterPos4fv"));
+ RasterPos4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glRasterPos4f"));
+ RasterPos4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glRasterPos4dv"));
+ RasterPos4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glRasterPos4d"));
+ RasterPos3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glRasterPos3sv"));
+ RasterPos3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glRasterPos3s"));
+ RasterPos3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glRasterPos3iv"));
+ RasterPos3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(GetProcAddress(handle, "glRasterPos3i"));
+ RasterPos3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glRasterPos3fv"));
+ RasterPos3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glRasterPos3f"));
+ RasterPos3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glRasterPos3dv"));
+ RasterPos3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glRasterPos3d"));
+ RasterPos2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glRasterPos2sv"));
+ RasterPos2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort )>(GetProcAddress(handle, "glRasterPos2s"));
+ RasterPos2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glRasterPos2iv"));
+ RasterPos2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(GetProcAddress(handle, "glRasterPos2i"));
+ RasterPos2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glRasterPos2fv"));
+ RasterPos2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(GetProcAddress(handle, "glRasterPos2f"));
+ RasterPos2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glRasterPos2dv"));
+ RasterPos2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(GetProcAddress(handle, "glRasterPos2d"));
+ Normal3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glNormal3sv"));
+ Normal3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glNormal3s"));
+ Normal3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glNormal3iv"));
+ Normal3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(GetProcAddress(handle, "glNormal3i"));
+ Normal3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glNormal3fv"));
+ Normal3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glNormal3f"));
+ Normal3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glNormal3dv"));
+ Normal3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glNormal3d"));
+ Normal3bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLbyte *)>(GetProcAddress(handle, "glNormal3bv"));
+ Normal3b = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbyte , GLbyte , GLbyte )>(GetProcAddress(handle, "glNormal3b"));
+ Indexsv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glIndexsv"));
+ Indexs = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort )>(GetProcAddress(handle, "glIndexs"));
+ Indexiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glIndexiv"));
+ Indexi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(GetProcAddress(handle, "glIndexi"));
+ Indexfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glIndexfv"));
+ Indexf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(GetProcAddress(handle, "glIndexf"));
+ Indexdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glIndexdv"));
+ Indexd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(GetProcAddress(handle, "glIndexd"));
+ End = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glEnd"));
+ EdgeFlagv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLboolean *)>(GetProcAddress(handle, "glEdgeFlagv"));
+ EdgeFlag = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLboolean )>(GetProcAddress(handle, "glEdgeFlag"));
+ Color4usv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLushort *)>(GetProcAddress(handle, "glColor4usv"));
+ Color4us = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLushort , GLushort , GLushort , GLushort )>(GetProcAddress(handle, "glColor4us"));
+ Color4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLuint *)>(GetProcAddress(handle, "glColor4uiv"));
+ Color4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint , GLuint )>(GetProcAddress(handle, "glColor4ui"));
+ Color4ubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(GetProcAddress(handle, "glColor4ubv"));
+ Color4ub = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte , GLubyte , GLubyte , GLubyte )>(GetProcAddress(handle, "glColor4ub"));
+ Color4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glColor4sv"));
+ Color4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glColor4s"));
+ Color4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glColor4iv"));
+ Color4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(GetProcAddress(handle, "glColor4i"));
+ Color4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glColor4fv"));
+ Color4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glColor4f"));
+ Color4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glColor4dv"));
+ Color4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glColor4d"));
+ Color4bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLbyte *)>(GetProcAddress(handle, "glColor4bv"));
+ Color4b = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbyte , GLbyte , GLbyte , GLbyte )>(GetProcAddress(handle, "glColor4b"));
+ Color3usv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLushort *)>(GetProcAddress(handle, "glColor3usv"));
+ Color3us = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLushort , GLushort , GLushort )>(GetProcAddress(handle, "glColor3us"));
+ Color3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLuint *)>(GetProcAddress(handle, "glColor3uiv"));
+ Color3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(GetProcAddress(handle, "glColor3ui"));
+ Color3ubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(GetProcAddress(handle, "glColor3ubv"));
+ Color3ub = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte , GLubyte , GLubyte )>(GetProcAddress(handle, "glColor3ub"));
+ Color3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(GetProcAddress(handle, "glColor3sv"));
+ Color3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(GetProcAddress(handle, "glColor3s"));
+ Color3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(GetProcAddress(handle, "glColor3iv"));
+ Color3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(GetProcAddress(handle, "glColor3i"));
+ Color3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(GetProcAddress(handle, "glColor3fv"));
+ Color3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(GetProcAddress(handle, "glColor3f"));
+ Color3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(GetProcAddress(handle, "glColor3dv"));
+ Color3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(GetProcAddress(handle, "glColor3d"));
+ Color3bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLbyte *)>(GetProcAddress(handle, "glColor3bv"));
+ Color3b = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbyte , GLbyte , GLbyte )>(GetProcAddress(handle, "glColor3b"));
+ Bitmap = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLsizei , GLfloat , GLfloat , GLfloat , GLfloat , const GLubyte *)>(GetProcAddress(handle, "glBitmap"));
+ Begin = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glBegin"));
+ ListBase = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(GetProcAddress(handle, "glListBase"));
+ GenLists = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLsizei )>(GetProcAddress(handle, "glGenLists"));
+ DeleteLists = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei )>(GetProcAddress(handle, "glDeleteLists"));
+ CallLists = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLenum , const GLvoid *)>(GetProcAddress(handle, "glCallLists"));
+ CallList = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(GetProcAddress(handle, "glCallList"));
+ EndList = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glEndList"));
+ NewList = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(GetProcAddress(handle, "glNewList"));
+#else
+ Translatef = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glTranslatef"));
+ Translated = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glTranslated"));
+ Scalef = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glScalef"));
+ Scaled = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glScaled"));
+ Rotatef = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glRotatef"));
+ Rotated = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glRotated"));
+ PushMatrix = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glPushMatrix"));
+ PopMatrix = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glPopMatrix"));
+ Ortho = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glOrtho"));
+ MultMatrixd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glMultMatrixd"));
+ MultMatrixf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glMultMatrixf"));
+ MatrixMode = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glMatrixMode"));
+ LoadMatrixd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glLoadMatrixd"));
+ LoadMatrixf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glLoadMatrixf"));
+ LoadIdentity = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glLoadIdentity"));
+ Frustum = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glFrustum"));
+ IsList = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsList"));
+ GetTexGeniv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetTexGeniv"));
+ GetTexGenfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetTexGenfv"));
+ GetTexGendv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLdouble *)>(context->getProcAddress("glGetTexGendv"));
+ GetTexEnviv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetTexEnviv"));
+ GetTexEnvfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetTexEnvfv"));
+ GetPolygonStipple = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte *)>(context->getProcAddress("glGetPolygonStipple"));
+ GetPixelMapusv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLushort *)>(context->getProcAddress("glGetPixelMapusv"));
+ GetPixelMapuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint *)>(context->getProcAddress("glGetPixelMapuiv"));
+ GetPixelMapfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat *)>(context->getProcAddress("glGetPixelMapfv"));
+ GetMaterialiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetMaterialiv"));
+ GetMaterialfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetMaterialfv"));
+ GetMapiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetMapiv"));
+ GetMapfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetMapfv"));
+ GetMapdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLdouble *)>(context->getProcAddress("glGetMapdv"));
+ GetLightiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetLightiv"));
+ GetLightfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetLightfv"));
+ GetClipPlane = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble *)>(context->getProcAddress("glGetClipPlane"));
+ DrawPixels = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLsizei , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glDrawPixels"));
+ CopyPixels = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei , GLenum )>(context->getProcAddress("glCopyPixels"));
+ PixelMapusv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLushort *)>(context->getProcAddress("glPixelMapusv"));
+ PixelMapuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLuint *)>(context->getProcAddress("glPixelMapuiv"));
+ PixelMapfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLfloat *)>(context->getProcAddress("glPixelMapfv"));
+ PixelTransferi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glPixelTransferi"));
+ PixelTransferf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glPixelTransferf"));
+ PixelZoom = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glPixelZoom"));
+ AlphaFunc = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glAlphaFunc"));
+ EvalPoint2 = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(context->getProcAddress("glEvalPoint2"));
+ EvalMesh2 = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint )>(context->getProcAddress("glEvalMesh2"));
+ EvalPoint1 = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(context->getProcAddress("glEvalPoint1"));
+ EvalMesh1 = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint )>(context->getProcAddress("glEvalMesh1"));
+ EvalCoord2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glEvalCoord2fv"));
+ EvalCoord2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glEvalCoord2f"));
+ EvalCoord2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glEvalCoord2dv"));
+ EvalCoord2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(context->getProcAddress("glEvalCoord2d"));
+ EvalCoord1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glEvalCoord1fv"));
+ EvalCoord1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glEvalCoord1f"));
+ EvalCoord1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glEvalCoord1dv"));
+ EvalCoord1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(context->getProcAddress("glEvalCoord1d"));
+ MapGrid2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat , GLint , GLfloat , GLfloat )>(context->getProcAddress("glMapGrid2f"));
+ MapGrid2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble , GLint , GLdouble , GLdouble )>(context->getProcAddress("glMapGrid2d"));
+ MapGrid1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat )>(context->getProcAddress("glMapGrid1f"));
+ MapGrid1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble )>(context->getProcAddress("glMapGrid1d"));
+ Map2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat , GLint , GLint , GLfloat , GLfloat , GLint , GLint , const GLfloat *)>(context->getProcAddress("glMap2f"));
+ Map2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble , GLint , GLint , GLdouble , GLdouble , GLint , GLint , const GLdouble *)>(context->getProcAddress("glMap2d"));
+ Map1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat , GLint , GLint , const GLfloat *)>(context->getProcAddress("glMap1f"));
+ Map1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble , GLint , GLint , const GLdouble *)>(context->getProcAddress("glMap1d"));
+ PushAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbitfield )>(context->getProcAddress("glPushAttrib"));
+ PopAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glPopAttrib"));
+ Accum = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glAccum"));
+ IndexMask = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIndexMask"));
+ ClearIndex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glClearIndex"));
+ ClearAccum = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glClearAccum"));
+ PushName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glPushName"));
+ PopName = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glPopName"));
+ PassThrough = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glPassThrough"));
+ LoadName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glLoadName"));
+ InitNames = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glInitNames"));
+ RenderMode = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glRenderMode"));
+ SelectBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glSelectBuffer"));
+ FeedbackBuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLenum , GLfloat *)>(context->getProcAddress("glFeedbackBuffer"));
+ TexGeniv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(context->getProcAddress("glTexGeniv"));
+ TexGeni = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glTexGeni"));
+ TexGenfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(context->getProcAddress("glTexGenfv"));
+ TexGenf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(context->getProcAddress("glTexGenf"));
+ TexGendv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLdouble *)>(context->getProcAddress("glTexGendv"));
+ TexGend = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLdouble )>(context->getProcAddress("glTexGend"));
+ TexEnviv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(context->getProcAddress("glTexEnviv"));
+ TexEnvi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glTexEnvi"));
+ TexEnvfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(context->getProcAddress("glTexEnvfv"));
+ TexEnvf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(context->getProcAddress("glTexEnvf"));
+ ShadeModel = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glShadeModel"));
+ PolygonStipple = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(context->getProcAddress("glPolygonStipple"));
+ Materialiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(context->getProcAddress("glMaterialiv"));
+ Materiali = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glMateriali"));
+ Materialfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(context->getProcAddress("glMaterialfv"));
+ Materialf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(context->getProcAddress("glMaterialf"));
+ LineStipple = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLushort )>(context->getProcAddress("glLineStipple"));
+ LightModeliv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glLightModeliv"));
+ LightModeli = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glLightModeli"));
+ LightModelfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glLightModelfv"));
+ LightModelf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glLightModelf"));
+ Lightiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(context->getProcAddress("glLightiv"));
+ Lighti = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glLighti"));
+ Lightfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(context->getProcAddress("glLightfv"));
+ Lightf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(context->getProcAddress("glLightf"));
+ Fogiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glFogiv"));
+ Fogi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glFogi"));
+ Fogfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glFogfv"));
+ Fogf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glFogf"));
+ ColorMaterial = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(context->getProcAddress("glColorMaterial"));
+ ClipPlane = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glClipPlane"));
+ Vertex4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glVertex4sv"));
+ Vertex4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(context->getProcAddress("glVertex4s"));
+ Vertex4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glVertex4iv"));
+ Vertex4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(context->getProcAddress("glVertex4i"));
+ Vertex4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glVertex4fv"));
+ Vertex4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glVertex4f"));
+ Vertex4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glVertex4dv"));
+ Vertex4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glVertex4d"));
+ Vertex3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glVertex3sv"));
+ Vertex3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(context->getProcAddress("glVertex3s"));
+ Vertex3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glVertex3iv"));
+ Vertex3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glVertex3i"));
+ Vertex3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glVertex3fv"));
+ Vertex3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glVertex3f"));
+ Vertex3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glVertex3dv"));
+ Vertex3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glVertex3d"));
+ Vertex2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glVertex2sv"));
+ Vertex2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort )>(context->getProcAddress("glVertex2s"));
+ Vertex2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glVertex2iv"));
+ Vertex2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(context->getProcAddress("glVertex2i"));
+ Vertex2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glVertex2fv"));
+ Vertex2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glVertex2f"));
+ Vertex2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glVertex2dv"));
+ Vertex2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(context->getProcAddress("glVertex2d"));
+ TexCoord4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glTexCoord4sv"));
+ TexCoord4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(context->getProcAddress("glTexCoord4s"));
+ TexCoord4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glTexCoord4iv"));
+ TexCoord4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(context->getProcAddress("glTexCoord4i"));
+ TexCoord4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glTexCoord4fv"));
+ TexCoord4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glTexCoord4f"));
+ TexCoord4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glTexCoord4dv"));
+ TexCoord4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glTexCoord4d"));
+ TexCoord3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glTexCoord3sv"));
+ TexCoord3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(context->getProcAddress("glTexCoord3s"));
+ TexCoord3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glTexCoord3iv"));
+ TexCoord3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glTexCoord3i"));
+ TexCoord3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glTexCoord3fv"));
+ TexCoord3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glTexCoord3f"));
+ TexCoord3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glTexCoord3dv"));
+ TexCoord3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glTexCoord3d"));
+ TexCoord2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glTexCoord2sv"));
+ TexCoord2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort )>(context->getProcAddress("glTexCoord2s"));
+ TexCoord2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glTexCoord2iv"));
+ TexCoord2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(context->getProcAddress("glTexCoord2i"));
+ TexCoord2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glTexCoord2fv"));
+ TexCoord2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glTexCoord2f"));
+ TexCoord2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glTexCoord2dv"));
+ TexCoord2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(context->getProcAddress("glTexCoord2d"));
+ TexCoord1sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glTexCoord1sv"));
+ TexCoord1s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort )>(context->getProcAddress("glTexCoord1s"));
+ TexCoord1iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glTexCoord1iv"));
+ TexCoord1i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(context->getProcAddress("glTexCoord1i"));
+ TexCoord1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glTexCoord1fv"));
+ TexCoord1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glTexCoord1f"));
+ TexCoord1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glTexCoord1dv"));
+ TexCoord1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(context->getProcAddress("glTexCoord1d"));
+ Rectsv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *, const GLshort *)>(context->getProcAddress("glRectsv"));
+ Rects = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(context->getProcAddress("glRects"));
+ Rectiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *, const GLint *)>(context->getProcAddress("glRectiv"));
+ Recti = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(context->getProcAddress("glRecti"));
+ Rectfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *, const GLfloat *)>(context->getProcAddress("glRectfv"));
+ Rectf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glRectf"));
+ Rectdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *, const GLdouble *)>(context->getProcAddress("glRectdv"));
+ Rectd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glRectd"));
+ RasterPos4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glRasterPos4sv"));
+ RasterPos4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(context->getProcAddress("glRasterPos4s"));
+ RasterPos4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glRasterPos4iv"));
+ RasterPos4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(context->getProcAddress("glRasterPos4i"));
+ RasterPos4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glRasterPos4fv"));
+ RasterPos4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glRasterPos4f"));
+ RasterPos4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glRasterPos4dv"));
+ RasterPos4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glRasterPos4d"));
+ RasterPos3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glRasterPos3sv"));
+ RasterPos3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(context->getProcAddress("glRasterPos3s"));
+ RasterPos3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glRasterPos3iv"));
+ RasterPos3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glRasterPos3i"));
+ RasterPos3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glRasterPos3fv"));
+ RasterPos3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glRasterPos3f"));
+ RasterPos3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glRasterPos3dv"));
+ RasterPos3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glRasterPos3d"));
+ RasterPos2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glRasterPos2sv"));
+ RasterPos2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort )>(context->getProcAddress("glRasterPos2s"));
+ RasterPos2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glRasterPos2iv"));
+ RasterPos2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(context->getProcAddress("glRasterPos2i"));
+ RasterPos2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glRasterPos2fv"));
+ RasterPos2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glRasterPos2f"));
+ RasterPos2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glRasterPos2dv"));
+ RasterPos2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(context->getProcAddress("glRasterPos2d"));
+ Normal3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glNormal3sv"));
+ Normal3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(context->getProcAddress("glNormal3s"));
+ Normal3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glNormal3iv"));
+ Normal3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glNormal3i"));
+ Normal3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glNormal3fv"));
+ Normal3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glNormal3f"));
+ Normal3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glNormal3dv"));
+ Normal3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glNormal3d"));
+ Normal3bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLbyte *)>(context->getProcAddress("glNormal3bv"));
+ Normal3b = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbyte , GLbyte , GLbyte )>(context->getProcAddress("glNormal3b"));
+ Indexsv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glIndexsv"));
+ Indexs = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort )>(context->getProcAddress("glIndexs"));
+ Indexiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glIndexiv"));
+ Indexi = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(context->getProcAddress("glIndexi"));
+ Indexfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glIndexfv"));
+ Indexf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glIndexf"));
+ Indexdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glIndexdv"));
+ Indexd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(context->getProcAddress("glIndexd"));
+ End = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glEnd"));
+ EdgeFlagv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLboolean *)>(context->getProcAddress("glEdgeFlagv"));
+ EdgeFlag = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLboolean )>(context->getProcAddress("glEdgeFlag"));
+ Color4usv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLushort *)>(context->getProcAddress("glColor4usv"));
+ Color4us = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLushort , GLushort , GLushort , GLushort )>(context->getProcAddress("glColor4us"));
+ Color4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLuint *)>(context->getProcAddress("glColor4uiv"));
+ Color4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint , GLuint )>(context->getProcAddress("glColor4ui"));
+ Color4ubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(context->getProcAddress("glColor4ubv"));
+ Color4ub = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte , GLubyte , GLubyte , GLubyte )>(context->getProcAddress("glColor4ub"));
+ Color4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glColor4sv"));
+ Color4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort , GLshort )>(context->getProcAddress("glColor4s"));
+ Color4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glColor4iv"));
+ Color4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(context->getProcAddress("glColor4i"));
+ Color4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glColor4fv"));
+ Color4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glColor4f"));
+ Color4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glColor4dv"));
+ Color4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glColor4d"));
+ Color4bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLbyte *)>(context->getProcAddress("glColor4bv"));
+ Color4b = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbyte , GLbyte , GLbyte , GLbyte )>(context->getProcAddress("glColor4b"));
+ Color3usv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLushort *)>(context->getProcAddress("glColor3usv"));
+ Color3us = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLushort , GLushort , GLushort )>(context->getProcAddress("glColor3us"));
+ Color3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLuint *)>(context->getProcAddress("glColor3uiv"));
+ Color3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(context->getProcAddress("glColor3ui"));
+ Color3ubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(context->getProcAddress("glColor3ubv"));
+ Color3ub = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte , GLubyte , GLubyte )>(context->getProcAddress("glColor3ub"));
+ Color3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glColor3sv"));
+ Color3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(context->getProcAddress("glColor3s"));
+ Color3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glColor3iv"));
+ Color3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glColor3i"));
+ Color3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glColor3fv"));
+ Color3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glColor3f"));
+ Color3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glColor3dv"));
+ Color3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glColor3d"));
+ Color3bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLbyte *)>(context->getProcAddress("glColor3bv"));
+ Color3b = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbyte , GLbyte , GLbyte )>(context->getProcAddress("glColor3b"));
+ Bitmap = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLsizei , GLfloat , GLfloat , GLfloat , GLfloat , const GLubyte *)>(context->getProcAddress("glBitmap"));
+ Begin = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glBegin"));
+ ListBase = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glListBase"));
+ GenLists = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLsizei )>(context->getProcAddress("glGenLists"));
+ DeleteLists = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei )>(context->getProcAddress("glDeleteLists"));
+ CallLists = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLenum , const GLvoid *)>(context->getProcAddress("glCallLists"));
+ CallList = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glCallList"));
+ EndList = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glEndList"));
+ NewList = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glNewList"));
+#endif
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 0, QOpenGLVersionStatus::DeprecatedStatus);
+}
+
+QOpenGLFunctions_1_1_DeprecatedBackend::QOpenGLFunctions_1_1_DeprecatedBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.1 deprecated functions
+#if defined(Q_OS_WIN)
+ HMODULE handle = GetModuleHandleA("opengl32.dll");
+ PushClientAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbitfield )>(GetProcAddress(handle, "glPushClientAttrib"));
+ PopClientAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(GetProcAddress(handle, "glPopClientAttrib"));
+ PrioritizeTextures = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *, const GLfloat *)>(GetProcAddress(handle, "glPrioritizeTextures"));
+ AreTexturesResident = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *, GLboolean *)>(GetProcAddress(handle, "glAreTexturesResident"));
+ VertexPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLenum , GLsizei , const GLvoid *)>(GetProcAddress(handle, "glVertexPointer"));
+ TexCoordPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLenum , GLsizei , const GLvoid *)>(GetProcAddress(handle, "glTexCoordPointer"));
+ NormalPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLvoid *)>(GetProcAddress(handle, "glNormalPointer"));
+ InterleavedArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLvoid *)>(GetProcAddress(handle, "glInterleavedArrays"));
+ IndexPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLvoid *)>(GetProcAddress(handle, "glIndexPointer"));
+ EnableClientState = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glEnableClientState"));
+ EdgeFlagPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLvoid *)>(GetProcAddress(handle, "glEdgeFlagPointer"));
+ DisableClientState = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(GetProcAddress(handle, "glDisableClientState"));
+ ColorPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLenum , GLsizei , const GLvoid *)>(GetProcAddress(handle, "glColorPointer"));
+ ArrayElement = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(GetProcAddress(handle, "glArrayElement"));
+#else
+ PushClientAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbitfield )>(context->getProcAddress("glPushClientAttrib"));
+ PopClientAttrib = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glPopClientAttrib"));
+ PrioritizeTextures = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *, const GLfloat *)>(context->getProcAddress("glPrioritizeTextures"));
+ AreTexturesResident = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *, GLboolean *)>(context->getProcAddress("glAreTexturesResident"));
+ VertexPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glVertexPointer"));
+ TexCoordPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glTexCoordPointer"));
+ NormalPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glNormalPointer"));
+ InterleavedArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glInterleavedArrays"));
+ IndexPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glIndexPointer"));
+ EnableClientState = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glEnableClientState"));
+ EdgeFlagPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLvoid *)>(context->getProcAddress("glEdgeFlagPointer"));
+ DisableClientState = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glDisableClientState"));
+ ColorPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glColorPointer"));
+ ArrayElement = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(context->getProcAddress("glArrayElement"));
+#endif
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 1, QOpenGLVersionStatus::DeprecatedStatus);
+}
+
+QOpenGLFunctions_1_2_DeprecatedBackend::QOpenGLFunctions_1_2_DeprecatedBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.2 deprecated functions
+ ResetMinmax = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glResetMinmax"));
+ ResetHistogram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glResetHistogram"));
+ Minmax = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLboolean )>(context->getProcAddress("glMinmax"));
+ Histogram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , GLboolean )>(context->getProcAddress("glHistogram"));
+ GetMinmaxParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetMinmaxParameteriv"));
+ GetMinmaxParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetMinmaxParameterfv"));
+ GetMinmax = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLboolean , GLenum , GLenum , GLvoid *)>(context->getProcAddress("glGetMinmax"));
+ GetHistogramParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetHistogramParameteriv"));
+ GetHistogramParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetHistogramParameterfv"));
+ GetHistogram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLboolean , GLenum , GLenum , GLvoid *)>(context->getProcAddress("glGetHistogram"));
+ SeparableFilter2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *, const GLvoid *)>(context->getProcAddress("glSeparableFilter2D"));
+ GetSeparableFilter = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLvoid *, GLvoid *, GLvoid *)>(context->getProcAddress("glGetSeparableFilter"));
+ GetConvolutionParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetConvolutionParameteriv"));
+ GetConvolutionParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetConvolutionParameterfv"));
+ GetConvolutionFilter = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLvoid *)>(context->getProcAddress("glGetConvolutionFilter"));
+ CopyConvolutionFilter2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint , GLint , GLsizei , GLsizei )>(context->getProcAddress("glCopyConvolutionFilter2D"));
+ CopyConvolutionFilter1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint , GLint , GLsizei )>(context->getProcAddress("glCopyConvolutionFilter1D"));
+ ConvolutionParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(context->getProcAddress("glConvolutionParameteriv"));
+ ConvolutionParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glConvolutionParameteri"));
+ ConvolutionParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(context->getProcAddress("glConvolutionParameterfv"));
+ ConvolutionParameterf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat )>(context->getProcAddress("glConvolutionParameterf"));
+ ConvolutionFilter2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glConvolutionFilter2D"));
+ ConvolutionFilter1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glConvolutionFilter1D"));
+ CopyColorSubTable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLint , GLint , GLsizei )>(context->getProcAddress("glCopyColorSubTable"));
+ ColorSubTable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLsizei , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glColorSubTable"));
+ GetColorTableParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetColorTableParameteriv"));
+ GetColorTableParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLfloat *)>(context->getProcAddress("glGetColorTableParameterfv"));
+ GetColorTable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLvoid *)>(context->getProcAddress("glGetColorTable"));
+ CopyColorTable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint , GLint , GLsizei )>(context->getProcAddress("glCopyColorTable"));
+ ColorTableParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLint *)>(context->getProcAddress("glColorTableParameteriv"));
+ ColorTableParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLfloat *)>(context->getProcAddress("glColorTableParameterfv"));
+ ColorTable = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glColorTable"));
+ TexImage3D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLsizei , GLsizei , GLsizei , GLint , GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glTexImage3D"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_2_DeprecatedBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 2, QOpenGLVersionStatus::DeprecatedStatus);
+}
+
+QOpenGLFunctions_1_3_DeprecatedBackend::QOpenGLFunctions_1_3_DeprecatedBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.3 deprecated functions
+ MultTransposeMatrixd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glMultTransposeMatrixd"));
+ MultTransposeMatrixf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glMultTransposeMatrixf"));
+ LoadTransposeMatrixd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glLoadTransposeMatrixd"));
+ LoadTransposeMatrixf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glLoadTransposeMatrixf"));
+ MultiTexCoord4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLshort *)>(context->getProcAddress("glMultiTexCoord4sv"));
+ MultiTexCoord4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLshort , GLshort , GLshort , GLshort )>(context->getProcAddress("glMultiTexCoord4s"));
+ MultiTexCoord4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glMultiTexCoord4iv"));
+ MultiTexCoord4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint )>(context->getProcAddress("glMultiTexCoord4i"));
+ MultiTexCoord4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glMultiTexCoord4fv"));
+ MultiTexCoord4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glMultiTexCoord4f"));
+ MultiTexCoord4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glMultiTexCoord4dv"));
+ MultiTexCoord4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glMultiTexCoord4d"));
+ MultiTexCoord3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLshort *)>(context->getProcAddress("glMultiTexCoord3sv"));
+ MultiTexCoord3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLshort , GLshort , GLshort )>(context->getProcAddress("glMultiTexCoord3s"));
+ MultiTexCoord3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glMultiTexCoord3iv"));
+ MultiTexCoord3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint )>(context->getProcAddress("glMultiTexCoord3i"));
+ MultiTexCoord3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glMultiTexCoord3fv"));
+ MultiTexCoord3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glMultiTexCoord3f"));
+ MultiTexCoord3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glMultiTexCoord3dv"));
+ MultiTexCoord3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glMultiTexCoord3d"));
+ MultiTexCoord2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLshort *)>(context->getProcAddress("glMultiTexCoord2sv"));
+ MultiTexCoord2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLshort , GLshort )>(context->getProcAddress("glMultiTexCoord2s"));
+ MultiTexCoord2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glMultiTexCoord2iv"));
+ MultiTexCoord2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint )>(context->getProcAddress("glMultiTexCoord2i"));
+ MultiTexCoord2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glMultiTexCoord2fv"));
+ MultiTexCoord2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat )>(context->getProcAddress("glMultiTexCoord2f"));
+ MultiTexCoord2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glMultiTexCoord2dv"));
+ MultiTexCoord2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble )>(context->getProcAddress("glMultiTexCoord2d"));
+ MultiTexCoord1sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLshort *)>(context->getProcAddress("glMultiTexCoord1sv"));
+ MultiTexCoord1s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLshort )>(context->getProcAddress("glMultiTexCoord1s"));
+ MultiTexCoord1iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glMultiTexCoord1iv"));
+ MultiTexCoord1i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glMultiTexCoord1i"));
+ MultiTexCoord1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glMultiTexCoord1fv"));
+ MultiTexCoord1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glMultiTexCoord1f"));
+ MultiTexCoord1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glMultiTexCoord1dv"));
+ MultiTexCoord1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble )>(context->getProcAddress("glMultiTexCoord1d"));
+ ClientActiveTexture = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glClientActiveTexture"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_3_DeprecatedBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 3, QOpenGLVersionStatus::DeprecatedStatus);
+}
+
+QOpenGLFunctions_1_4_DeprecatedBackend::QOpenGLFunctions_1_4_DeprecatedBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 1.4 deprecated functions
+ WindowPos3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glWindowPos3sv"));
+ WindowPos3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(context->getProcAddress("glWindowPos3s"));
+ WindowPos3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glWindowPos3iv"));
+ WindowPos3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glWindowPos3i"));
+ WindowPos3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glWindowPos3fv"));
+ WindowPos3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glWindowPos3f"));
+ WindowPos3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glWindowPos3dv"));
+ WindowPos3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glWindowPos3d"));
+ WindowPos2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glWindowPos2sv"));
+ WindowPos2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort )>(context->getProcAddress("glWindowPos2s"));
+ WindowPos2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glWindowPos2iv"));
+ WindowPos2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(context->getProcAddress("glWindowPos2i"));
+ WindowPos2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glWindowPos2fv"));
+ WindowPos2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glWindowPos2f"));
+ WindowPos2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glWindowPos2dv"));
+ WindowPos2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble )>(context->getProcAddress("glWindowPos2d"));
+ SecondaryColorPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glSecondaryColorPointer"));
+ SecondaryColor3usv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLushort *)>(context->getProcAddress("glSecondaryColor3usv"));
+ SecondaryColor3us = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLushort , GLushort , GLushort )>(context->getProcAddress("glSecondaryColor3us"));
+ SecondaryColor3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLuint *)>(context->getProcAddress("glSecondaryColor3uiv"));
+ SecondaryColor3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(context->getProcAddress("glSecondaryColor3ui"));
+ SecondaryColor3ubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLubyte *)>(context->getProcAddress("glSecondaryColor3ubv"));
+ SecondaryColor3ub = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLubyte , GLubyte , GLubyte )>(context->getProcAddress("glSecondaryColor3ub"));
+ SecondaryColor3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLshort *)>(context->getProcAddress("glSecondaryColor3sv"));
+ SecondaryColor3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLshort , GLshort , GLshort )>(context->getProcAddress("glSecondaryColor3s"));
+ SecondaryColor3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLint *)>(context->getProcAddress("glSecondaryColor3iv"));
+ SecondaryColor3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glSecondaryColor3i"));
+ SecondaryColor3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glSecondaryColor3fv"));
+ SecondaryColor3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glSecondaryColor3f"));
+ SecondaryColor3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glSecondaryColor3dv"));
+ SecondaryColor3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glSecondaryColor3d"));
+ SecondaryColor3bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLbyte *)>(context->getProcAddress("glSecondaryColor3bv"));
+ SecondaryColor3b = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbyte , GLbyte , GLbyte )>(context->getProcAddress("glSecondaryColor3b"));
+ FogCoordPointer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glFogCoordPointer"));
+ FogCoorddv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLdouble *)>(context->getProcAddress("glFogCoorddv"));
+ FogCoordd = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLdouble )>(context->getProcAddress("glFogCoordd"));
+ FogCoordfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(const GLfloat *)>(context->getProcAddress("glFogCoordfv"));
+ FogCoordf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glFogCoordf"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_1_4_DeprecatedBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(1, 4, QOpenGLVersionStatus::DeprecatedStatus);
+}
+
+QOpenGLFunctions_2_0_DeprecatedBackend::QOpenGLFunctions_2_0_DeprecatedBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 2.0 deprecated functions
+ VertexAttrib4usv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLushort *)>(context->getProcAddress("glVertexAttrib4usv"));
+ VertexAttrib4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLuint *)>(context->getProcAddress("glVertexAttrib4uiv"));
+ VertexAttrib4ubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLubyte *)>(context->getProcAddress("glVertexAttrib4ubv"));
+ VertexAttrib4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLshort *)>(context->getProcAddress("glVertexAttrib4sv"));
+ VertexAttrib4s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLshort , GLshort , GLshort , GLshort )>(context->getProcAddress("glVertexAttrib4s"));
+ VertexAttrib4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLint *)>(context->getProcAddress("glVertexAttrib4iv"));
+ VertexAttrib4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLfloat *)>(context->getProcAddress("glVertexAttrib4fv"));
+ VertexAttrib4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glVertexAttrib4f"));
+ VertexAttrib4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLdouble *)>(context->getProcAddress("glVertexAttrib4dv"));
+ VertexAttrib4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glVertexAttrib4d"));
+ VertexAttrib4bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLbyte *)>(context->getProcAddress("glVertexAttrib4bv"));
+ VertexAttrib4Nusv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLushort *)>(context->getProcAddress("glVertexAttrib4Nusv"));
+ VertexAttrib4Nuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLuint *)>(context->getProcAddress("glVertexAttrib4Nuiv"));
+ VertexAttrib4Nubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLubyte *)>(context->getProcAddress("glVertexAttrib4Nubv"));
+ VertexAttrib4Nub = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLubyte , GLubyte , GLubyte , GLubyte )>(context->getProcAddress("glVertexAttrib4Nub"));
+ VertexAttrib4Nsv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLshort *)>(context->getProcAddress("glVertexAttrib4Nsv"));
+ VertexAttrib4Niv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLint *)>(context->getProcAddress("glVertexAttrib4Niv"));
+ VertexAttrib4Nbv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLbyte *)>(context->getProcAddress("glVertexAttrib4Nbv"));
+ VertexAttrib3sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLshort *)>(context->getProcAddress("glVertexAttrib3sv"));
+ VertexAttrib3s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLshort , GLshort , GLshort )>(context->getProcAddress("glVertexAttrib3s"));
+ VertexAttrib3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLfloat *)>(context->getProcAddress("glVertexAttrib3fv"));
+ VertexAttrib3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glVertexAttrib3f"));
+ VertexAttrib3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLdouble *)>(context->getProcAddress("glVertexAttrib3dv"));
+ VertexAttrib3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glVertexAttrib3d"));
+ VertexAttrib2sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLshort *)>(context->getProcAddress("glVertexAttrib2sv"));
+ VertexAttrib2s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLshort , GLshort )>(context->getProcAddress("glVertexAttrib2s"));
+ VertexAttrib2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLfloat *)>(context->getProcAddress("glVertexAttrib2fv"));
+ VertexAttrib2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLfloat , GLfloat )>(context->getProcAddress("glVertexAttrib2f"));
+ VertexAttrib2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLdouble *)>(context->getProcAddress("glVertexAttrib2dv"));
+ VertexAttrib2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble , GLdouble )>(context->getProcAddress("glVertexAttrib2d"));
+ VertexAttrib1sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLshort *)>(context->getProcAddress("glVertexAttrib1sv"));
+ VertexAttrib1s = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLshort )>(context->getProcAddress("glVertexAttrib1s"));
+ VertexAttrib1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLfloat *)>(context->getProcAddress("glVertexAttrib1fv"));
+ VertexAttrib1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLfloat )>(context->getProcAddress("glVertexAttrib1f"));
+ VertexAttrib1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLdouble *)>(context->getProcAddress("glVertexAttrib1dv"));
+ VertexAttrib1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLdouble )>(context->getProcAddress("glVertexAttrib1d"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_2_0_DeprecatedBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(2, 0, QOpenGLVersionStatus::DeprecatedStatus);
+}
+
+QOpenGLFunctions_3_0_DeprecatedBackend::QOpenGLFunctions_3_0_DeprecatedBackend(QOpenGLContext *context)
+ : QOpenGLVersionFunctionsBackend(context)
+{
+ // OpenGL 3.0 deprecated functions
+ VertexAttribI4usv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLushort *)>(context->getProcAddress("glVertexAttribI4usv"));
+ VertexAttribI4ubv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLubyte *)>(context->getProcAddress("glVertexAttribI4ubv"));
+ VertexAttribI4sv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLshort *)>(context->getProcAddress("glVertexAttribI4sv"));
+ VertexAttribI4bv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLbyte *)>(context->getProcAddress("glVertexAttribI4bv"));
+ VertexAttribI4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLuint *)>(context->getProcAddress("glVertexAttribI4uiv"));
+ VertexAttribI3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLuint *)>(context->getProcAddress("glVertexAttribI3uiv"));
+ VertexAttribI2uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLuint *)>(context->getProcAddress("glVertexAttribI2uiv"));
+ VertexAttribI1uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLuint *)>(context->getProcAddress("glVertexAttribI1uiv"));
+ VertexAttribI4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLint *)>(context->getProcAddress("glVertexAttribI4iv"));
+ VertexAttribI3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLint *)>(context->getProcAddress("glVertexAttribI3iv"));
+ VertexAttribI2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLint *)>(context->getProcAddress("glVertexAttribI2iv"));
+ VertexAttribI1iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , const GLint *)>(context->getProcAddress("glVertexAttribI1iv"));
+ VertexAttribI4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint , GLuint , GLuint )>(context->getProcAddress("glVertexAttribI4ui"));
+ VertexAttribI3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint , GLuint )>(context->getProcAddress("glVertexAttribI3ui"));
+ VertexAttribI2ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(context->getProcAddress("glVertexAttribI2ui"));
+ VertexAttribI1ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glVertexAttribI1ui"));
+ VertexAttribI4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint , GLint )>(context->getProcAddress("glVertexAttribI4i"));
+ VertexAttribI3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint )>(context->getProcAddress("glVertexAttribI3i"));
+ VertexAttribI2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint )>(context->getProcAddress("glVertexAttribI2i"));
+ VertexAttribI1i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint )>(context->getProcAddress("glVertexAttribI1i"));
+
+}
+
+QOpenGLVersionStatus QOpenGLFunctions_3_0_DeprecatedBackend::versionStatus()
+{
+ return QOpenGLVersionStatus(3, 0, QOpenGLVersionStatus::DeprecatedStatus);
+}
+
+
+#else
+
+// No backends for OpenGL ES 2
+
+#endif // !QT_OPENGL_ES_2
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglversionfunctions.h b/src/gui/opengl/qopenglversionfunctions.h
new file mode 100644
index 0000000000..474a5d5d1f
--- /dev/null
+++ b/src/gui/opengl/qopenglversionfunctions.h
@@ -0,0 +1,1364 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONS_H
+#define QOPENGLVERSIONFUNCTIONS_H
+
+#ifndef QT_NO_OPENGL
+
+#include <QtCore/QtGlobal>
+#include <QtCore/qhash.h>
+#include <QtCore/qpair.h>
+#include <QtGui/qopengl.h>
+
+QT_BEGIN_NAMESPACE
+
+class QOpenGLContext;
+
+#if 0
+// silence syncqt warnings
+#pragma qt_class(QOpenGLVersionFunctions)
+#pragma qt_sync_stop_processing
+#endif
+
+struct QOpenGLVersionStatus
+{
+ enum OpenGLStatus {
+ CoreStatus,
+ DeprecatedStatus,
+ InvalidStatus
+ };
+
+ QOpenGLVersionStatus()
+ : version(qMakePair(0, 0)),
+ status(InvalidStatus)
+ {}
+
+ QOpenGLVersionStatus(int majorVersion, int minorVersion, QOpenGLVersionStatus::OpenGLStatus functionStatus)
+ : version(qMakePair(majorVersion, minorVersion)),
+ status(functionStatus)
+ {}
+
+ QPair<int, int> version;
+ OpenGLStatus status;
+};
+
+inline uint qHash(const QOpenGLVersionStatus &v, uint seed)
+{
+ return qHash(static_cast<int>(v.status * 1000)
+ + v.version.first * 100 + v.version.second * 10, seed);
+}
+
+inline bool operator==(const QOpenGLVersionStatus &lhs, const QOpenGLVersionStatus &rhs)
+{
+ if (lhs.status != rhs.status)
+ return false;
+ return lhs.version == rhs.version;
+}
+
+inline bool operator!=(const QOpenGLVersionStatus &lhs, const QOpenGLVersionStatus &rhs)
+{
+ return !operator==(lhs, rhs);
+}
+
+class QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLVersionFunctionsBackend(QOpenGLContext *ctx)
+ : context(ctx)
+ {}
+
+ QOpenGLContext *context;
+ QAtomicInt refs;
+};
+
+class QAbstractOpenGLFunctionsPrivate
+{
+public:
+ QAbstractOpenGLFunctionsPrivate()
+ : owningContext(0),
+ initialized(false)
+ {}
+
+ static QOpenGLVersionFunctionsBackend *functionsBackend(QOpenGLContext *context,
+ const QOpenGLVersionStatus &v);
+ static void insertFunctionsBackend(QOpenGLContext *context,
+ const QOpenGLVersionStatus &v,
+ QOpenGLVersionFunctionsBackend *backend);
+ static void removeFunctionsBackend(QOpenGLContext *context, const QOpenGLVersionStatus &v);
+
+ QOpenGLContext *owningContext;
+ bool initialized;
+};
+
+class QAbstractOpenGLFunctions
+{
+public:
+ virtual ~QAbstractOpenGLFunctions();
+
+ virtual bool initializeOpenGLFunctions();
+
+ Q_DECLARE_PRIVATE(QAbstractOpenGLFunctions)
+
+protected:
+ QAbstractOpenGLFunctions();
+ QAbstractOpenGLFunctionsPrivate *d_ptr;
+
+ bool isInitialized() const;
+
+ void setOwningContext(const QOpenGLContext *context);
+ QOpenGLContext *owningContext() const;
+
+ friend class QOpenGLContext;
+};
+
+#if !defined(QT_OPENGL_ES_2)
+
+class QOpenGLFunctions_1_0_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_0_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.0 core functions
+ void (QOPENGLF_APIENTRYP Viewport)(GLint x, GLint y, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP DepthRange)(GLdouble nearVal, GLdouble farVal);
+ GLboolean (QOPENGLF_APIENTRYP IsEnabled)(GLenum cap);
+ void (QOPENGLF_APIENTRYP GetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetTexParameteriv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetTexParameterfv)(GLenum target, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
+ const GLubyte * (QOPENGLF_APIENTRYP GetString)(GLenum name);
+ void (QOPENGLF_APIENTRYP GetIntegerv)(GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetFloatv)(GLenum pname, GLfloat *params);
+ GLenum (QOPENGLF_APIENTRYP GetError)();
+ void (QOPENGLF_APIENTRYP GetDoublev)(GLenum pname, GLdouble *params);
+ void (QOPENGLF_APIENTRYP GetBooleanv)(GLenum pname, GLboolean *params);
+ void (QOPENGLF_APIENTRYP ReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
+ void (QOPENGLF_APIENTRYP ReadBuffer)(GLenum mode);
+ void (QOPENGLF_APIENTRYP PixelStorei)(GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP PixelStoref)(GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP DepthFunc)(GLenum func);
+ void (QOPENGLF_APIENTRYP StencilOp)(GLenum fail, GLenum zfail, GLenum zpass);
+ void (QOPENGLF_APIENTRYP StencilFunc)(GLenum func, GLint ref, GLuint mask);
+ void (QOPENGLF_APIENTRYP LogicOp)(GLenum opcode);
+ void (QOPENGLF_APIENTRYP BlendFunc)(GLenum sfactor, GLenum dfactor);
+ void (QOPENGLF_APIENTRYP Flush)();
+ void (QOPENGLF_APIENTRYP Finish)();
+ void (QOPENGLF_APIENTRYP Enable)(GLenum cap);
+ void (QOPENGLF_APIENTRYP Disable)(GLenum cap);
+ void (QOPENGLF_APIENTRYP DepthMask)(GLboolean flag);
+ void (QOPENGLF_APIENTRYP ColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+ void (QOPENGLF_APIENTRYP StencilMask)(GLuint mask);
+ void (QOPENGLF_APIENTRYP ClearDepth)(GLdouble depth);
+ void (QOPENGLF_APIENTRYP ClearStencil)(GLint s);
+ void (QOPENGLF_APIENTRYP ClearColor)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void (QOPENGLF_APIENTRYP Clear)(GLbitfield mask);
+ void (QOPENGLF_APIENTRYP DrawBuffer)(GLenum mode);
+ void (QOPENGLF_APIENTRYP TexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void (QOPENGLF_APIENTRYP TexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+ void (QOPENGLF_APIENTRYP TexParameteriv)(GLenum target, GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP TexParameteri)(GLenum target, GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP TexParameterfv)(GLenum target, GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP TexParameterf)(GLenum target, GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP Scissor)(GLint x, GLint y, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP PolygonMode)(GLenum face, GLenum mode);
+ void (QOPENGLF_APIENTRYP PointSize)(GLfloat size);
+ void (QOPENGLF_APIENTRYP LineWidth)(GLfloat width);
+ void (QOPENGLF_APIENTRYP Hint)(GLenum target, GLenum mode);
+ void (QOPENGLF_APIENTRYP FrontFace)(GLenum mode);
+ void (QOPENGLF_APIENTRYP CullFace)(GLenum mode);
+
+};
+
+class QOpenGLFunctions_1_1_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_1_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.1 core functions
+ void (QOPENGLF_APIENTRYP Indexubv)(const GLubyte *c);
+ void (QOPENGLF_APIENTRYP Indexub)(GLubyte c);
+ GLboolean (QOPENGLF_APIENTRYP IsTexture)(GLuint texture);
+ void (QOPENGLF_APIENTRYP GenTextures)(GLsizei n, GLuint *textures);
+ void (QOPENGLF_APIENTRYP DeleteTextures)(GLsizei n, const GLuint *textures);
+ void (QOPENGLF_APIENTRYP BindTexture)(GLenum target, GLuint texture);
+ void (QOPENGLF_APIENTRYP TexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void (QOPENGLF_APIENTRYP TexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
+ void (QOPENGLF_APIENTRYP CopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP CopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
+ void (QOPENGLF_APIENTRYP CopyTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+ void (QOPENGLF_APIENTRYP CopyTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
+ void (QOPENGLF_APIENTRYP PolygonOffset)(GLfloat factor, GLfloat units);
+ void (QOPENGLF_APIENTRYP GetPointerv)(GLenum pname, GLvoid* *params);
+ void (QOPENGLF_APIENTRYP DrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
+ void (QOPENGLF_APIENTRYP DrawArrays)(GLenum mode, GLint first, GLsizei count);
+
+};
+
+class QOpenGLFunctions_1_2_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_2_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.2 core functions
+ void (QOPENGLF_APIENTRYP CopyTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP TexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
+ void (QOPENGLF_APIENTRYP DrawRangeElements)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
+ void (QOPENGLF_APIENTRYP BlendEquation)(GLenum mode);
+ void (QOPENGLF_APIENTRYP BlendColor)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+
+};
+
+class QOpenGLFunctions_1_3_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_3_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.3 core functions
+ void (QOPENGLF_APIENTRYP GetCompressedTexImage)(GLenum target, GLint level, GLvoid *img);
+ void (QOPENGLF_APIENTRYP CompressedTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void (QOPENGLF_APIENTRYP CompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void (QOPENGLF_APIENTRYP CompressedTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
+ void (QOPENGLF_APIENTRYP CompressedTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
+ void (QOPENGLF_APIENTRYP CompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
+ void (QOPENGLF_APIENTRYP CompressedTexImage3D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
+ void (QOPENGLF_APIENTRYP SampleCoverage)(GLfloat value, GLboolean invert);
+ void (QOPENGLF_APIENTRYP ActiveTexture)(GLenum texture);
+
+};
+
+class QOpenGLFunctions_1_4_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_4_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.4 core functions
+ void (QOPENGLF_APIENTRYP PointParameteriv)(GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP PointParameteri)(GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP PointParameterfv)(GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP PointParameterf)(GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP MultiDrawElements)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
+ void (QOPENGLF_APIENTRYP MultiDrawArrays)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
+ void (QOPENGLF_APIENTRYP BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+};
+
+class QOpenGLFunctions_1_5_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_5_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.5 core functions
+ void (QOPENGLF_APIENTRYP GetBufferPointerv)(GLenum target, GLenum pname, GLvoid* *params);
+ void (QOPENGLF_APIENTRYP GetBufferParameteriv)(GLenum target, GLenum pname, GLint *params);
+ GLboolean (QOPENGLF_APIENTRYP UnmapBuffer)(GLenum target);
+ GLvoid* (QOPENGLF_APIENTRYP MapBuffer)(GLenum target, GLenum access);
+ void (QOPENGLF_APIENTRYP GetBufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
+ void (QOPENGLF_APIENTRYP BufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
+ void (QOPENGLF_APIENTRYP BufferData)(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
+ GLboolean (QOPENGLF_APIENTRYP IsBuffer)(GLuint buffer);
+ void (QOPENGLF_APIENTRYP GenBuffers)(GLsizei n, GLuint *buffers);
+ void (QOPENGLF_APIENTRYP DeleteBuffers)(GLsizei n, const GLuint *buffers);
+ void (QOPENGLF_APIENTRYP BindBuffer)(GLenum target, GLuint buffer);
+ void (QOPENGLF_APIENTRYP GetQueryObjectuiv)(GLuint id, GLenum pname, GLuint *params);
+ void (QOPENGLF_APIENTRYP GetQueryObjectiv)(GLuint id, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetQueryiv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP EndQuery)(GLenum target);
+ void (QOPENGLF_APIENTRYP BeginQuery)(GLenum target, GLuint id);
+ GLboolean (QOPENGLF_APIENTRYP IsQuery)(GLuint id);
+ void (QOPENGLF_APIENTRYP DeleteQueries)(GLsizei n, const GLuint *ids);
+ void (QOPENGLF_APIENTRYP GenQueries)(GLsizei n, GLuint *ids);
+
+};
+
+class QOpenGLFunctions_2_0_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_2_0_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 2.0 core functions
+ void (QOPENGLF_APIENTRYP VertexAttribPointer)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP ValidateProgram)(GLuint program);
+ void (QOPENGLF_APIENTRYP UniformMatrix4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP Uniform4iv)(GLint location, GLsizei count, const GLint *value);
+ void (QOPENGLF_APIENTRYP Uniform3iv)(GLint location, GLsizei count, const GLint *value);
+ void (QOPENGLF_APIENTRYP Uniform2iv)(GLint location, GLsizei count, const GLint *value);
+ void (QOPENGLF_APIENTRYP Uniform1iv)(GLint location, GLsizei count, const GLint *value);
+ void (QOPENGLF_APIENTRYP Uniform4fv)(GLint location, GLsizei count, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP Uniform3fv)(GLint location, GLsizei count, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP Uniform2fv)(GLint location, GLsizei count, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP Uniform1fv)(GLint location, GLsizei count, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP Uniform4i)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void (QOPENGLF_APIENTRYP Uniform3i)(GLint location, GLint v0, GLint v1, GLint v2);
+ void (QOPENGLF_APIENTRYP Uniform2i)(GLint location, GLint v0, GLint v1);
+ void (QOPENGLF_APIENTRYP Uniform1i)(GLint location, GLint v0);
+ void (QOPENGLF_APIENTRYP Uniform4f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void (QOPENGLF_APIENTRYP Uniform3f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void (QOPENGLF_APIENTRYP Uniform2f)(GLint location, GLfloat v0, GLfloat v1);
+ void (QOPENGLF_APIENTRYP Uniform1f)(GLint location, GLfloat v0);
+ void (QOPENGLF_APIENTRYP UseProgram)(GLuint program);
+ void (QOPENGLF_APIENTRYP ShaderSource)(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
+ void (QOPENGLF_APIENTRYP LinkProgram)(GLuint program);
+ GLboolean (QOPENGLF_APIENTRYP IsShader)(GLuint shader);
+ GLboolean (QOPENGLF_APIENTRYP IsProgram)(GLuint program);
+ void (QOPENGLF_APIENTRYP GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid* *pointer);
+ void (QOPENGLF_APIENTRYP GetVertexAttribiv)(GLuint index, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetVertexAttribfv)(GLuint index, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetVertexAttribdv)(GLuint index, GLenum pname, GLdouble *params);
+ void (QOPENGLF_APIENTRYP GetUniformiv)(GLuint program, GLint location, GLint *params);
+ void (QOPENGLF_APIENTRYP GetUniformfv)(GLuint program, GLint location, GLfloat *params);
+ GLint (QOPENGLF_APIENTRYP GetUniformLocation)(GLuint program, const GLchar *name);
+ void (QOPENGLF_APIENTRYP GetShaderSource)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+ void (QOPENGLF_APIENTRYP GetShaderInfoLog)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void (QOPENGLF_APIENTRYP GetShaderiv)(GLuint shader, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetProgramInfoLog)(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void (QOPENGLF_APIENTRYP GetProgramiv)(GLuint program, GLenum pname, GLint *params);
+ GLint (QOPENGLF_APIENTRYP GetAttribLocation)(GLuint program, const GLchar *name);
+ void (QOPENGLF_APIENTRYP GetAttachedShaders)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
+ void (QOPENGLF_APIENTRYP GetActiveUniform)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void (QOPENGLF_APIENTRYP GetActiveAttrib)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+ void (QOPENGLF_APIENTRYP EnableVertexAttribArray)(GLuint index);
+ void (QOPENGLF_APIENTRYP DisableVertexAttribArray)(GLuint index);
+ void (QOPENGLF_APIENTRYP DetachShader)(GLuint program, GLuint shader);
+ void (QOPENGLF_APIENTRYP DeleteShader)(GLuint shader);
+ void (QOPENGLF_APIENTRYP DeleteProgram)(GLuint program);
+ GLuint (QOPENGLF_APIENTRYP CreateShader)(GLenum type);
+ GLuint (QOPENGLF_APIENTRYP CreateProgram)();
+ void (QOPENGLF_APIENTRYP CompileShader)(GLuint shader);
+ void (QOPENGLF_APIENTRYP BindAttribLocation)(GLuint program, GLuint index, const GLchar *name);
+ void (QOPENGLF_APIENTRYP AttachShader)(GLuint program, GLuint shader);
+ void (QOPENGLF_APIENTRYP StencilMaskSeparate)(GLenum face, GLuint mask);
+ void (QOPENGLF_APIENTRYP StencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask);
+ void (QOPENGLF_APIENTRYP StencilOpSeparate)(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+ void (QOPENGLF_APIENTRYP DrawBuffers)(GLsizei n, const GLenum *bufs);
+ void (QOPENGLF_APIENTRYP BlendEquationSeparate)(GLenum modeRGB, GLenum modeAlpha);
+
+};
+
+class QOpenGLFunctions_2_1_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_2_1_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 2.1 core functions
+ void (QOPENGLF_APIENTRYP UniformMatrix4x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix3x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix4x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix2x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix3x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+
+};
+
+class QOpenGLFunctions_3_0_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_3_0_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 3.0 core functions
+ GLboolean (QOPENGLF_APIENTRYP IsVertexArray)(GLuint array);
+ void (QOPENGLF_APIENTRYP GenVertexArrays)(GLsizei n, GLuint *arrays);
+ void (QOPENGLF_APIENTRYP DeleteVertexArrays)(GLsizei n, const GLuint *arrays);
+ void (QOPENGLF_APIENTRYP BindVertexArray)(GLuint array);
+ void (QOPENGLF_APIENTRYP FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length);
+ GLvoid* (QOPENGLF_APIENTRYP MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+ void (QOPENGLF_APIENTRYP FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ void (QOPENGLF_APIENTRYP RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+ void (QOPENGLF_APIENTRYP GenerateMipmap)(GLenum target);
+ void (QOPENGLF_APIENTRYP GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+ void (QOPENGLF_APIENTRYP FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+ void (QOPENGLF_APIENTRYP FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ void (QOPENGLF_APIENTRYP FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+ GLenum (QOPENGLF_APIENTRYP CheckFramebufferStatus)(GLenum target);
+ void (QOPENGLF_APIENTRYP GenFramebuffers)(GLsizei n, GLuint *framebuffers);
+ void (QOPENGLF_APIENTRYP DeleteFramebuffers)(GLsizei n, const GLuint *framebuffers);
+ void (QOPENGLF_APIENTRYP BindFramebuffer)(GLenum target, GLuint framebuffer);
+ GLboolean (QOPENGLF_APIENTRYP IsFramebuffer)(GLuint framebuffer);
+ void (QOPENGLF_APIENTRYP GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP GenRenderbuffers)(GLsizei n, GLuint *renderbuffers);
+ void (QOPENGLF_APIENTRYP DeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers);
+ void (QOPENGLF_APIENTRYP BindRenderbuffer)(GLenum target, GLuint renderbuffer);
+ GLboolean (QOPENGLF_APIENTRYP IsRenderbuffer)(GLuint renderbuffer);
+ const GLubyte * (QOPENGLF_APIENTRYP GetStringi)(GLenum name, GLuint index);
+ void (QOPENGLF_APIENTRYP ClearBufferfi)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+ void (QOPENGLF_APIENTRYP ClearBufferfv)(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ClearBufferuiv)(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ void (QOPENGLF_APIENTRYP ClearBufferiv)(GLenum buffer, GLint drawbuffer, const GLint *value);
+ void (QOPENGLF_APIENTRYP GetTexParameterIuiv)(GLenum target, GLenum pname, GLuint *params);
+ void (QOPENGLF_APIENTRYP GetTexParameterIiv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP TexParameterIuiv)(GLenum target, GLenum pname, const GLuint *params);
+ void (QOPENGLF_APIENTRYP TexParameterIiv)(GLenum target, GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP Uniform4uiv)(GLint location, GLsizei count, const GLuint *value);
+ void (QOPENGLF_APIENTRYP Uniform3uiv)(GLint location, GLsizei count, const GLuint *value);
+ void (QOPENGLF_APIENTRYP Uniform2uiv)(GLint location, GLsizei count, const GLuint *value);
+ void (QOPENGLF_APIENTRYP Uniform1uiv)(GLint location, GLsizei count, const GLuint *value);
+ void (QOPENGLF_APIENTRYP Uniform4ui)(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void (QOPENGLF_APIENTRYP Uniform3ui)(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void (QOPENGLF_APIENTRYP Uniform2ui)(GLint location, GLuint v0, GLuint v1);
+ void (QOPENGLF_APIENTRYP Uniform1ui)(GLint location, GLuint v0);
+ GLint (QOPENGLF_APIENTRYP GetFragDataLocation)(GLuint program, const GLchar *name);
+ void (QOPENGLF_APIENTRYP BindFragDataLocation)(GLuint program, GLuint color, const GLchar *name);
+ void (QOPENGLF_APIENTRYP GetUniformuiv)(GLuint program, GLint location, GLuint *params);
+ void (QOPENGLF_APIENTRYP GetVertexAttribIuiv)(GLuint index, GLenum pname, GLuint *params);
+ void (QOPENGLF_APIENTRYP GetVertexAttribIiv)(GLuint index, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP VertexAttribIPointer)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP EndConditionalRender)();
+ void (QOPENGLF_APIENTRYP BeginConditionalRender)(GLuint id, GLenum mode);
+ void (QOPENGLF_APIENTRYP ClampColor)(GLenum target, GLenum clamp);
+ void (QOPENGLF_APIENTRYP GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+ void (QOPENGLF_APIENTRYP TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
+ void (QOPENGLF_APIENTRYP BindBufferBase)(GLenum target, GLuint index, GLuint buffer);
+ void (QOPENGLF_APIENTRYP BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void (QOPENGLF_APIENTRYP EndTransformFeedback)();
+ void (QOPENGLF_APIENTRYP BeginTransformFeedback)(GLenum primitiveMode);
+ GLboolean (QOPENGLF_APIENTRYP IsEnabledi)(GLenum target, GLuint index);
+ void (QOPENGLF_APIENTRYP Disablei)(GLenum target, GLuint index);
+ void (QOPENGLF_APIENTRYP Enablei)(GLenum target, GLuint index);
+ void (QOPENGLF_APIENTRYP GetIntegeri_v)(GLenum target, GLuint index, GLint *data);
+ void (QOPENGLF_APIENTRYP GetBooleani_v)(GLenum target, GLuint index, GLboolean *data);
+ void (QOPENGLF_APIENTRYP ColorMaski)(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+
+};
+
+class QOpenGLFunctions_3_1_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_3_1_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 3.1 core functions
+ void (QOPENGLF_APIENTRYP CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+ void (QOPENGLF_APIENTRYP UniformBlockBinding)(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+ void (QOPENGLF_APIENTRYP GetActiveUniformBlockName)(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+ void (QOPENGLF_APIENTRYP GetActiveUniformBlockiv)(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+ GLuint (QOPENGLF_APIENTRYP GetUniformBlockIndex)(GLuint program, const GLchar *uniformBlockName);
+ void (QOPENGLF_APIENTRYP GetActiveUniformName)(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
+ void (QOPENGLF_APIENTRYP GetActiveUniformsiv)(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetUniformIndices)(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
+ void (QOPENGLF_APIENTRYP PrimitiveRestartIndex)(GLuint index);
+ void (QOPENGLF_APIENTRYP TexBuffer)(GLenum target, GLenum internalformat, GLuint buffer);
+ void (QOPENGLF_APIENTRYP DrawElementsInstanced)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
+ void (QOPENGLF_APIENTRYP DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+
+};
+
+class QOpenGLFunctions_3_2_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_3_2_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 3.2 core functions
+ void (QOPENGLF_APIENTRYP SampleMaski)(GLuint index, GLbitfield mask);
+ void (QOPENGLF_APIENTRYP GetMultisamplefv)(GLenum pname, GLuint index, GLfloat *val);
+ void (QOPENGLF_APIENTRYP TexImage3DMultisample)(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void (QOPENGLF_APIENTRYP TexImage2DMultisample)(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void (QOPENGLF_APIENTRYP GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ void (QOPENGLF_APIENTRYP GetInteger64v)(GLenum pname, GLint64 *params);
+ void (QOPENGLF_APIENTRYP WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ GLenum (QOPENGLF_APIENTRYP ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ void (QOPENGLF_APIENTRYP DeleteSync)(GLsync sync);
+ GLboolean (QOPENGLF_APIENTRYP IsSync)(GLsync sync);
+ GLsync (QOPENGLF_APIENTRYP FenceSync)(GLenum condition, GLbitfield flags);
+ void (QOPENGLF_APIENTRYP ProvokingVertex)(GLenum mode);
+ void (QOPENGLF_APIENTRYP MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
+ void (QOPENGLF_APIENTRYP DrawElementsInstancedBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
+ void (QOPENGLF_APIENTRYP DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void (QOPENGLF_APIENTRYP DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
+ void (QOPENGLF_APIENTRYP FramebufferTexture)(GLenum target, GLenum attachment, GLuint texture, GLint level);
+ void (QOPENGLF_APIENTRYP GetBufferParameteri64v)(GLenum target, GLenum pname, GLint64 *params);
+ void (QOPENGLF_APIENTRYP GetInteger64i_v)(GLenum target, GLuint index, GLint64 *data);
+
+};
+
+class QOpenGLFunctions_3_3_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_3_3_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 3.3 core functions
+ void (QOPENGLF_APIENTRYP VertexAttribP4uiv)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void (QOPENGLF_APIENTRYP VertexAttribP4ui)(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void (QOPENGLF_APIENTRYP VertexAttribP3uiv)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void (QOPENGLF_APIENTRYP VertexAttribP3ui)(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void (QOPENGLF_APIENTRYP VertexAttribP2uiv)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void (QOPENGLF_APIENTRYP VertexAttribP2ui)(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void (QOPENGLF_APIENTRYP VertexAttribP1uiv)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
+ void (QOPENGLF_APIENTRYP VertexAttribP1ui)(GLuint index, GLenum type, GLboolean normalized, GLuint value);
+ void (QOPENGLF_APIENTRYP SecondaryColorP3uiv)(GLenum type, const GLuint *color);
+ void (QOPENGLF_APIENTRYP SecondaryColorP3ui)(GLenum type, GLuint color);
+ void (QOPENGLF_APIENTRYP ColorP4uiv)(GLenum type, const GLuint *color);
+ void (QOPENGLF_APIENTRYP ColorP4ui)(GLenum type, GLuint color);
+ void (QOPENGLF_APIENTRYP ColorP3uiv)(GLenum type, const GLuint *color);
+ void (QOPENGLF_APIENTRYP ColorP3ui)(GLenum type, GLuint color);
+ void (QOPENGLF_APIENTRYP NormalP3uiv)(GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP NormalP3ui)(GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP MultiTexCoordP4uiv)(GLenum texture, GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP MultiTexCoordP4ui)(GLenum texture, GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP MultiTexCoordP3uiv)(GLenum texture, GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP MultiTexCoordP3ui)(GLenum texture, GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP MultiTexCoordP2uiv)(GLenum texture, GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP MultiTexCoordP2ui)(GLenum texture, GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP MultiTexCoordP1uiv)(GLenum texture, GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP MultiTexCoordP1ui)(GLenum texture, GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP TexCoordP4uiv)(GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP TexCoordP4ui)(GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP TexCoordP3uiv)(GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP TexCoordP3ui)(GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP TexCoordP2uiv)(GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP TexCoordP2ui)(GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP TexCoordP1uiv)(GLenum type, const GLuint *coords);
+ void (QOPENGLF_APIENTRYP TexCoordP1ui)(GLenum type, GLuint coords);
+ void (QOPENGLF_APIENTRYP VertexP4uiv)(GLenum type, const GLuint *value);
+ void (QOPENGLF_APIENTRYP VertexP4ui)(GLenum type, GLuint value);
+ void (QOPENGLF_APIENTRYP VertexP3uiv)(GLenum type, const GLuint *value);
+ void (QOPENGLF_APIENTRYP VertexP3ui)(GLenum type, GLuint value);
+ void (QOPENGLF_APIENTRYP VertexP2uiv)(GLenum type, const GLuint *value);
+ void (QOPENGLF_APIENTRYP VertexP2ui)(GLenum type, GLuint value);
+ void (QOPENGLF_APIENTRYP GetQueryObjectui64v)(GLuint id, GLenum pname, GLuint64 *params);
+ void (QOPENGLF_APIENTRYP GetQueryObjecti64v)(GLuint id, GLenum pname, GLint64 *params);
+ void (QOPENGLF_APIENTRYP QueryCounter)(GLuint id, GLenum target);
+ void (QOPENGLF_APIENTRYP GetSamplerParameterIuiv)(GLuint sampler, GLenum pname, GLuint *params);
+ void (QOPENGLF_APIENTRYP GetSamplerParameterfv)(GLuint sampler, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetSamplerParameterIiv)(GLuint sampler, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetSamplerParameteriv)(GLuint sampler, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP SamplerParameterIuiv)(GLuint sampler, GLenum pname, const GLuint *param);
+ void (QOPENGLF_APIENTRYP SamplerParameterIiv)(GLuint sampler, GLenum pname, const GLint *param);
+ void (QOPENGLF_APIENTRYP SamplerParameterfv)(GLuint sampler, GLenum pname, const GLfloat *param);
+ void (QOPENGLF_APIENTRYP SamplerParameterf)(GLuint sampler, GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP SamplerParameteriv)(GLuint sampler, GLenum pname, const GLint *param);
+ void (QOPENGLF_APIENTRYP SamplerParameteri)(GLuint sampler, GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP BindSampler)(GLuint unit, GLuint sampler);
+ GLboolean (QOPENGLF_APIENTRYP IsSampler)(GLuint sampler);
+ void (QOPENGLF_APIENTRYP DeleteSamplers)(GLsizei count, const GLuint *samplers);
+ void (QOPENGLF_APIENTRYP GenSamplers)(GLsizei count, GLuint *samplers);
+ GLint (QOPENGLF_APIENTRYP GetFragDataIndex)(GLuint program, const GLchar *name);
+ void (QOPENGLF_APIENTRYP BindFragDataLocationIndexed)(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
+ void (QOPENGLF_APIENTRYP VertexAttribDivisor)(GLuint index, GLuint divisor);
+
+};
+
+class QOpenGLFunctions_4_0_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_4_0_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 4.0 core functions
+ void (QOPENGLF_APIENTRYP GetQueryIndexediv)(GLenum target, GLuint index, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP EndQueryIndexed)(GLenum target, GLuint index);
+ void (QOPENGLF_APIENTRYP BeginQueryIndexed)(GLenum target, GLuint index, GLuint id);
+ void (QOPENGLF_APIENTRYP DrawTransformFeedbackStream)(GLenum mode, GLuint id, GLuint stream);
+ void (QOPENGLF_APIENTRYP DrawTransformFeedback)(GLenum mode, GLuint id);
+ void (QOPENGLF_APIENTRYP ResumeTransformFeedback)();
+ void (QOPENGLF_APIENTRYP PauseTransformFeedback)();
+ GLboolean (QOPENGLF_APIENTRYP IsTransformFeedback)(GLuint id);
+ void (QOPENGLF_APIENTRYP GenTransformFeedbacks)(GLsizei n, GLuint *ids);
+ void (QOPENGLF_APIENTRYP DeleteTransformFeedbacks)(GLsizei n, const GLuint *ids);
+ void (QOPENGLF_APIENTRYP BindTransformFeedback)(GLenum target, GLuint id);
+ void (QOPENGLF_APIENTRYP PatchParameterfv)(GLenum pname, const GLfloat *values);
+ void (QOPENGLF_APIENTRYP PatchParameteri)(GLenum pname, GLint value);
+ void (QOPENGLF_APIENTRYP GetProgramStageiv)(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
+ void (QOPENGLF_APIENTRYP GetUniformSubroutineuiv)(GLenum shadertype, GLint location, GLuint *params);
+ void (QOPENGLF_APIENTRYP UniformSubroutinesuiv)(GLenum shadertype, GLsizei count, const GLuint *indices);
+ void (QOPENGLF_APIENTRYP GetActiveSubroutineName)(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void (QOPENGLF_APIENTRYP GetActiveSubroutineUniformName)(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
+ void (QOPENGLF_APIENTRYP GetActiveSubroutineUniformiv)(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
+ GLuint (QOPENGLF_APIENTRYP GetSubroutineIndex)(GLuint program, GLenum shadertype, const GLchar *name);
+ GLint (QOPENGLF_APIENTRYP GetSubroutineUniformLocation)(GLuint program, GLenum shadertype, const GLchar *name);
+ void (QOPENGLF_APIENTRYP GetUniformdv)(GLuint program, GLint location, GLdouble *params);
+ void (QOPENGLF_APIENTRYP UniformMatrix4x3dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix4x2dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix3x4dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix3x2dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix2x4dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix2x3dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix4dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix3dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP UniformMatrix2dv)(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP Uniform4dv)(GLint location, GLsizei count, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP Uniform3dv)(GLint location, GLsizei count, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP Uniform2dv)(GLint location, GLsizei count, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP Uniform1dv)(GLint location, GLsizei count, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP Uniform4d)(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void (QOPENGLF_APIENTRYP Uniform3d)(GLint location, GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP Uniform2d)(GLint location, GLdouble x, GLdouble y);
+ void (QOPENGLF_APIENTRYP Uniform1d)(GLint location, GLdouble x);
+ void (QOPENGLF_APIENTRYP DrawElementsIndirect)(GLenum mode, GLenum type, const GLvoid *indirect);
+ void (QOPENGLF_APIENTRYP DrawArraysIndirect)(GLenum mode, const GLvoid *indirect);
+ void (QOPENGLF_APIENTRYP BlendFuncSeparatei)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+ void (QOPENGLF_APIENTRYP BlendFunci)(GLuint buf, GLenum src, GLenum dst);
+ void (QOPENGLF_APIENTRYP BlendEquationSeparatei)(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+ void (QOPENGLF_APIENTRYP BlendEquationi)(GLuint buf, GLenum mode);
+ void (QOPENGLF_APIENTRYP MinSampleShading)(GLfloat value);
+
+};
+
+class QOpenGLFunctions_4_1_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_4_1_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 4.1 core functions
+ void (QOPENGLF_APIENTRYP GetDoublei_v)(GLenum target, GLuint index, GLdouble *data);
+ void (QOPENGLF_APIENTRYP GetFloati_v)(GLenum target, GLuint index, GLfloat *data);
+ void (QOPENGLF_APIENTRYP DepthRangeIndexed)(GLuint index, GLdouble n, GLdouble f);
+ void (QOPENGLF_APIENTRYP DepthRangeArrayv)(GLuint first, GLsizei count, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP ScissorIndexedv)(GLuint index, const GLint *v);
+ void (QOPENGLF_APIENTRYP ScissorIndexed)(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP ScissorArrayv)(GLuint first, GLsizei count, const GLint *v);
+ void (QOPENGLF_APIENTRYP ViewportIndexedfv)(GLuint index, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP ViewportIndexedf)(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
+ void (QOPENGLF_APIENTRYP ViewportArrayv)(GLuint first, GLsizei count, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP GetVertexAttribLdv)(GLuint index, GLenum pname, GLdouble *params);
+ void (QOPENGLF_APIENTRYP VertexAttribLPointer)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP VertexAttribL4dv)(GLuint index, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP VertexAttribL3dv)(GLuint index, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP VertexAttribL2dv)(GLuint index, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP VertexAttribL1dv)(GLuint index, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP VertexAttribL4d)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void (QOPENGLF_APIENTRYP VertexAttribL3d)(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP VertexAttribL2d)(GLuint index, GLdouble x, GLdouble y);
+ void (QOPENGLF_APIENTRYP VertexAttribL1d)(GLuint index, GLdouble x);
+ void (QOPENGLF_APIENTRYP GetProgramPipelineInfoLog)(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+ void (QOPENGLF_APIENTRYP ValidateProgramPipeline)(GLuint pipeline);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix4x3dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix3x4dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix4x2dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix2x4dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix3x2dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix2x3dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix4x3fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix3x4fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix4x2fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix2x4fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix3x2fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix2x3fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix4dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix3dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix2dv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix4fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix3fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniformMatrix2fv)(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform4uiv)(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform4ui)(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ void (QOPENGLF_APIENTRYP ProgramUniform4dv)(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform4d)(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
+ void (QOPENGLF_APIENTRYP ProgramUniform4fv)(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform4f)(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ void (QOPENGLF_APIENTRYP ProgramUniform4iv)(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform4i)(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ void (QOPENGLF_APIENTRYP ProgramUniform3uiv)(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform3ui)(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ void (QOPENGLF_APIENTRYP ProgramUniform3dv)(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform3d)(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
+ void (QOPENGLF_APIENTRYP ProgramUniform3fv)(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform3f)(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ void (QOPENGLF_APIENTRYP ProgramUniform3iv)(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform3i)(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+ void (QOPENGLF_APIENTRYP ProgramUniform2uiv)(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform2ui)(GLuint program, GLint location, GLuint v0, GLuint v1);
+ void (QOPENGLF_APIENTRYP ProgramUniform2dv)(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform2d)(GLuint program, GLint location, GLdouble v0, GLdouble v1);
+ void (QOPENGLF_APIENTRYP ProgramUniform2fv)(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform2f)(GLuint program, GLint location, GLfloat v0, GLfloat v1);
+ void (QOPENGLF_APIENTRYP ProgramUniform2iv)(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform2i)(GLuint program, GLint location, GLint v0, GLint v1);
+ void (QOPENGLF_APIENTRYP ProgramUniform1uiv)(GLuint program, GLint location, GLsizei count, const GLuint *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform1ui)(GLuint program, GLint location, GLuint v0);
+ void (QOPENGLF_APIENTRYP ProgramUniform1dv)(GLuint program, GLint location, GLsizei count, const GLdouble *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform1d)(GLuint program, GLint location, GLdouble v0);
+ void (QOPENGLF_APIENTRYP ProgramUniform1fv)(GLuint program, GLint location, GLsizei count, const GLfloat *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform1f)(GLuint program, GLint location, GLfloat v0);
+ void (QOPENGLF_APIENTRYP ProgramUniform1iv)(GLuint program, GLint location, GLsizei count, const GLint *value);
+ void (QOPENGLF_APIENTRYP ProgramUniform1i)(GLuint program, GLint location, GLint v0);
+ void (QOPENGLF_APIENTRYP GetProgramPipelineiv)(GLuint pipeline, GLenum pname, GLint *params);
+ GLboolean (QOPENGLF_APIENTRYP IsProgramPipeline)(GLuint pipeline);
+ void (QOPENGLF_APIENTRYP GenProgramPipelines)(GLsizei n, GLuint *pipelines);
+ void (QOPENGLF_APIENTRYP DeleteProgramPipelines)(GLsizei n, const GLuint *pipelines);
+ void (QOPENGLF_APIENTRYP BindProgramPipeline)(GLuint pipeline);
+ GLuint (QOPENGLF_APIENTRYP CreateShaderProgramv)(GLenum type, GLsizei count, const GLchar* const *strings);
+ void (QOPENGLF_APIENTRYP ActiveShaderProgram)(GLuint pipeline, GLuint program);
+ void (QOPENGLF_APIENTRYP UseProgramStages)(GLuint pipeline, GLbitfield stages, GLuint program);
+ void (QOPENGLF_APIENTRYP ProgramParameteri)(GLuint program, GLenum pname, GLint value);
+ void (QOPENGLF_APIENTRYP ProgramBinary)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
+ void (QOPENGLF_APIENTRYP GetProgramBinary)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+ void (QOPENGLF_APIENTRYP ClearDepthf)(GLfloat dd);
+ void (QOPENGLF_APIENTRYP DepthRangef)(GLfloat n, GLfloat f);
+ void (QOPENGLF_APIENTRYP GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+ void (QOPENGLF_APIENTRYP ShaderBinary)(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
+ void (QOPENGLF_APIENTRYP ReleaseShaderCompiler)();
+
+};
+
+class QOpenGLFunctions_4_2_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_4_2_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 4.2 core functions
+ void (QOPENGLF_APIENTRYP TexStorage3D)(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+ void (QOPENGLF_APIENTRYP TexStorage2D)(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP TexStorage1D)(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
+ void (QOPENGLF_APIENTRYP MemoryBarrier)(GLbitfield barriers);
+ void (QOPENGLF_APIENTRYP BindImageTexture)(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
+ void (QOPENGLF_APIENTRYP GetActiveAtomicCounterBufferiv)(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetInternalformativ)(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
+ void (QOPENGLF_APIENTRYP DrawTransformFeedbackStreamInstanced)(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
+ void (QOPENGLF_APIENTRYP DrawTransformFeedbackInstanced)(GLenum mode, GLuint id, GLsizei instancecount);
+ void (QOPENGLF_APIENTRYP DrawElementsInstancedBaseVertexBaseInstance)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
+ void (QOPENGLF_APIENTRYP DrawElementsInstancedBaseInstance)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
+ void (QOPENGLF_APIENTRYP DrawArraysInstancedBaseInstance)(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
+
+};
+
+class QOpenGLFunctions_4_3_CoreBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_4_3_CoreBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 4.3 core functions
+ void (QOPENGLF_APIENTRYP TexStorage3DMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+ void (QOPENGLF_APIENTRYP TexStorage2DMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+ void (QOPENGLF_APIENTRYP TexBufferRange)(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ void (QOPENGLF_APIENTRYP ShaderStorageBlockBinding)(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
+ GLint (QOPENGLF_APIENTRYP GetProgramResourceLocationIndex)(GLuint program, GLenum programInterface, const GLchar *name);
+ GLint (QOPENGLF_APIENTRYP GetProgramResourceLocation)(GLuint program, GLenum programInterface, const GLchar *name);
+ void (QOPENGLF_APIENTRYP GetProgramResourceiv)(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
+ void (QOPENGLF_APIENTRYP GetProgramResourceName)(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
+ GLuint (QOPENGLF_APIENTRYP GetProgramResourceIndex)(GLuint program, GLenum programInterface, const GLchar *name);
+ void (QOPENGLF_APIENTRYP GetProgramInterfaceiv)(GLuint program, GLenum programInterface, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP MultiDrawElementsIndirect)(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
+ void (QOPENGLF_APIENTRYP MultiDrawArraysIndirect)(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
+ void (QOPENGLF_APIENTRYP InvalidateSubFramebuffer)(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP InvalidateFramebuffer)(GLenum target, GLsizei numAttachments, const GLenum *attachments);
+ void (QOPENGLF_APIENTRYP InvalidateBufferData)(GLuint buffer);
+ void (QOPENGLF_APIENTRYP InvalidateBufferSubData)(GLuint buffer, GLintptr offset, GLsizeiptr length);
+ void (QOPENGLF_APIENTRYP InvalidateTexImage)(GLuint texture, GLint level);
+ void (QOPENGLF_APIENTRYP InvalidateTexSubImage)(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
+ void (QOPENGLF_APIENTRYP GetInternalformati64v)(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
+ void (QOPENGLF_APIENTRYP GetFramebufferParameteriv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP FramebufferParameteri)(GLenum target, GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP VertexBindingDivisor)(GLuint bindingindex, GLuint divisor);
+ void (QOPENGLF_APIENTRYP VertexAttribBinding)(GLuint attribindex, GLuint bindingindex);
+ void (QOPENGLF_APIENTRYP VertexAttribLFormat)(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+ void (QOPENGLF_APIENTRYP VertexAttribIFormat)(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+ void (QOPENGLF_APIENTRYP VertexAttribFormat)(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+ void (QOPENGLF_APIENTRYP BindVertexBuffer)(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+ void (QOPENGLF_APIENTRYP TextureView)(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
+ void (QOPENGLF_APIENTRYP CopyImageSubData)(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
+ void (QOPENGLF_APIENTRYP DispatchComputeIndirect)(GLintptr indirect);
+ void (QOPENGLF_APIENTRYP DispatchCompute)(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
+ void (QOPENGLF_APIENTRYP ClearBufferSubData)(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
+ void (QOPENGLF_APIENTRYP ClearBufferData)(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
+
+};
+
+class QOpenGLFunctions_1_0_DeprecatedBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_0_DeprecatedBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.0 deprecated functions
+ void (QOPENGLF_APIENTRYP Translatef)(GLfloat x, GLfloat y, GLfloat z);
+ void (QOPENGLF_APIENTRYP Translated)(GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP Scalef)(GLfloat x, GLfloat y, GLfloat z);
+ void (QOPENGLF_APIENTRYP Scaled)(GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP Rotatef)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ void (QOPENGLF_APIENTRYP Rotated)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP PushMatrix)();
+ void (QOPENGLF_APIENTRYP PopMatrix)();
+ void (QOPENGLF_APIENTRYP Ortho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ void (QOPENGLF_APIENTRYP MultMatrixd)(const GLdouble *m);
+ void (QOPENGLF_APIENTRYP MultMatrixf)(const GLfloat *m);
+ void (QOPENGLF_APIENTRYP MatrixMode)(GLenum mode);
+ void (QOPENGLF_APIENTRYP LoadMatrixd)(const GLdouble *m);
+ void (QOPENGLF_APIENTRYP LoadMatrixf)(const GLfloat *m);
+ void (QOPENGLF_APIENTRYP LoadIdentity)();
+ void (QOPENGLF_APIENTRYP Frustum)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
+ GLboolean (QOPENGLF_APIENTRYP IsList)(GLuint list);
+ void (QOPENGLF_APIENTRYP GetTexGeniv)(GLenum coord, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetTexGenfv)(GLenum coord, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetTexGendv)(GLenum coord, GLenum pname, GLdouble *params);
+ void (QOPENGLF_APIENTRYP GetTexEnviv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetTexEnvfv)(GLenum target, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetPolygonStipple)(GLubyte *mask);
+ void (QOPENGLF_APIENTRYP GetPixelMapusv)(GLenum map, GLushort *values);
+ void (QOPENGLF_APIENTRYP GetPixelMapuiv)(GLenum map, GLuint *values);
+ void (QOPENGLF_APIENTRYP GetPixelMapfv)(GLenum map, GLfloat *values);
+ void (QOPENGLF_APIENTRYP GetMaterialiv)(GLenum face, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetMaterialfv)(GLenum face, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetMapiv)(GLenum target, GLenum query, GLint *v);
+ void (QOPENGLF_APIENTRYP GetMapfv)(GLenum target, GLenum query, GLfloat *v);
+ void (QOPENGLF_APIENTRYP GetMapdv)(GLenum target, GLenum query, GLdouble *v);
+ void (QOPENGLF_APIENTRYP GetLightiv)(GLenum light, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetLightfv)(GLenum light, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetClipPlane)(GLenum plane, GLdouble *equation);
+ void (QOPENGLF_APIENTRYP DrawPixels)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
+ void (QOPENGLF_APIENTRYP CopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
+ void (QOPENGLF_APIENTRYP PixelMapusv)(GLenum map, GLint mapsize, const GLushort *values);
+ void (QOPENGLF_APIENTRYP PixelMapuiv)(GLenum map, GLint mapsize, const GLuint *values);
+ void (QOPENGLF_APIENTRYP PixelMapfv)(GLenum map, GLint mapsize, const GLfloat *values);
+ void (QOPENGLF_APIENTRYP PixelTransferi)(GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP PixelTransferf)(GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP PixelZoom)(GLfloat xfactor, GLfloat yfactor);
+ void (QOPENGLF_APIENTRYP AlphaFunc)(GLenum func, GLfloat ref);
+ void (QOPENGLF_APIENTRYP EvalPoint2)(GLint i, GLint j);
+ void (QOPENGLF_APIENTRYP EvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
+ void (QOPENGLF_APIENTRYP EvalPoint1)(GLint i);
+ void (QOPENGLF_APIENTRYP EvalMesh1)(GLenum mode, GLint i1, GLint i2);
+ void (QOPENGLF_APIENTRYP EvalCoord2fv)(const GLfloat *u);
+ void (QOPENGLF_APIENTRYP EvalCoord2f)(GLfloat u, GLfloat v);
+ void (QOPENGLF_APIENTRYP EvalCoord2dv)(const GLdouble *u);
+ void (QOPENGLF_APIENTRYP EvalCoord2d)(GLdouble u, GLdouble v);
+ void (QOPENGLF_APIENTRYP EvalCoord1fv)(const GLfloat *u);
+ void (QOPENGLF_APIENTRYP EvalCoord1f)(GLfloat u);
+ void (QOPENGLF_APIENTRYP EvalCoord1dv)(const GLdouble *u);
+ void (QOPENGLF_APIENTRYP EvalCoord1d)(GLdouble u);
+ void (QOPENGLF_APIENTRYP MapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
+ void (QOPENGLF_APIENTRYP MapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
+ void (QOPENGLF_APIENTRYP MapGrid1f)(GLint un, GLfloat u1, GLfloat u2);
+ void (QOPENGLF_APIENTRYP MapGrid1d)(GLint un, GLdouble u1, GLdouble u2);
+ void (QOPENGLF_APIENTRYP Map2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
+ void (QOPENGLF_APIENTRYP Map2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
+ void (QOPENGLF_APIENTRYP Map1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
+ void (QOPENGLF_APIENTRYP Map1d)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
+ void (QOPENGLF_APIENTRYP PushAttrib)(GLbitfield mask);
+ void (QOPENGLF_APIENTRYP PopAttrib)();
+ void (QOPENGLF_APIENTRYP Accum)(GLenum op, GLfloat value);
+ void (QOPENGLF_APIENTRYP IndexMask)(GLuint mask);
+ void (QOPENGLF_APIENTRYP ClearIndex)(GLfloat c);
+ void (QOPENGLF_APIENTRYP ClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void (QOPENGLF_APIENTRYP PushName)(GLuint name);
+ void (QOPENGLF_APIENTRYP PopName)();
+ void (QOPENGLF_APIENTRYP PassThrough)(GLfloat token);
+ void (QOPENGLF_APIENTRYP LoadName)(GLuint name);
+ void (QOPENGLF_APIENTRYP InitNames)();
+ GLint (QOPENGLF_APIENTRYP RenderMode)(GLenum mode);
+ void (QOPENGLF_APIENTRYP SelectBuffer)(GLsizei size, GLuint *buffer);
+ void (QOPENGLF_APIENTRYP FeedbackBuffer)(GLsizei size, GLenum type, GLfloat *buffer);
+ void (QOPENGLF_APIENTRYP TexGeniv)(GLenum coord, GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP TexGeni)(GLenum coord, GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP TexGenfv)(GLenum coord, GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP TexGenf)(GLenum coord, GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP TexGendv)(GLenum coord, GLenum pname, const GLdouble *params);
+ void (QOPENGLF_APIENTRYP TexGend)(GLenum coord, GLenum pname, GLdouble param);
+ void (QOPENGLF_APIENTRYP TexEnviv)(GLenum target, GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP TexEnvi)(GLenum target, GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP TexEnvfv)(GLenum target, GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP TexEnvf)(GLenum target, GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP ShadeModel)(GLenum mode);
+ void (QOPENGLF_APIENTRYP PolygonStipple)(const GLubyte *mask);
+ void (QOPENGLF_APIENTRYP Materialiv)(GLenum face, GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP Materiali)(GLenum face, GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP Materialfv)(GLenum face, GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP Materialf)(GLenum face, GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP LineStipple)(GLint factor, GLushort pattern);
+ void (QOPENGLF_APIENTRYP LightModeliv)(GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP LightModeli)(GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP LightModelfv)(GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP LightModelf)(GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP Lightiv)(GLenum light, GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP Lighti)(GLenum light, GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP Lightfv)(GLenum light, GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP Lightf)(GLenum light, GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP Fogiv)(GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP Fogi)(GLenum pname, GLint param);
+ void (QOPENGLF_APIENTRYP Fogfv)(GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP Fogf)(GLenum pname, GLfloat param);
+ void (QOPENGLF_APIENTRYP ColorMaterial)(GLenum face, GLenum mode);
+ void (QOPENGLF_APIENTRYP ClipPlane)(GLenum plane, const GLdouble *equation);
+ void (QOPENGLF_APIENTRYP Vertex4sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP Vertex4s)(GLshort x, GLshort y, GLshort z, GLshort w);
+ void (QOPENGLF_APIENTRYP Vertex4iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP Vertex4i)(GLint x, GLint y, GLint z, GLint w);
+ void (QOPENGLF_APIENTRYP Vertex4fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP Vertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void (QOPENGLF_APIENTRYP Vertex4dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP Vertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void (QOPENGLF_APIENTRYP Vertex3sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP Vertex3s)(GLshort x, GLshort y, GLshort z);
+ void (QOPENGLF_APIENTRYP Vertex3iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP Vertex3i)(GLint x, GLint y, GLint z);
+ void (QOPENGLF_APIENTRYP Vertex3fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP Vertex3f)(GLfloat x, GLfloat y, GLfloat z);
+ void (QOPENGLF_APIENTRYP Vertex3dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP Vertex3d)(GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP Vertex2sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP Vertex2s)(GLshort x, GLshort y);
+ void (QOPENGLF_APIENTRYP Vertex2iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP Vertex2i)(GLint x, GLint y);
+ void (QOPENGLF_APIENTRYP Vertex2fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP Vertex2f)(GLfloat x, GLfloat y);
+ void (QOPENGLF_APIENTRYP Vertex2dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP Vertex2d)(GLdouble x, GLdouble y);
+ void (QOPENGLF_APIENTRYP TexCoord4sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP TexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q);
+ void (QOPENGLF_APIENTRYP TexCoord4iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP TexCoord4i)(GLint s, GLint t, GLint r, GLint q);
+ void (QOPENGLF_APIENTRYP TexCoord4fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP TexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void (QOPENGLF_APIENTRYP TexCoord4dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP TexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void (QOPENGLF_APIENTRYP TexCoord3sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP TexCoord3s)(GLshort s, GLshort t, GLshort r);
+ void (QOPENGLF_APIENTRYP TexCoord3iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP TexCoord3i)(GLint s, GLint t, GLint r);
+ void (QOPENGLF_APIENTRYP TexCoord3fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP TexCoord3f)(GLfloat s, GLfloat t, GLfloat r);
+ void (QOPENGLF_APIENTRYP TexCoord3dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP TexCoord3d)(GLdouble s, GLdouble t, GLdouble r);
+ void (QOPENGLF_APIENTRYP TexCoord2sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP TexCoord2s)(GLshort s, GLshort t);
+ void (QOPENGLF_APIENTRYP TexCoord2iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP TexCoord2i)(GLint s, GLint t);
+ void (QOPENGLF_APIENTRYP TexCoord2fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP TexCoord2f)(GLfloat s, GLfloat t);
+ void (QOPENGLF_APIENTRYP TexCoord2dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP TexCoord2d)(GLdouble s, GLdouble t);
+ void (QOPENGLF_APIENTRYP TexCoord1sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP TexCoord1s)(GLshort s);
+ void (QOPENGLF_APIENTRYP TexCoord1iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP TexCoord1i)(GLint s);
+ void (QOPENGLF_APIENTRYP TexCoord1fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP TexCoord1f)(GLfloat s);
+ void (QOPENGLF_APIENTRYP TexCoord1dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP TexCoord1d)(GLdouble s);
+ void (QOPENGLF_APIENTRYP Rectsv)(const GLshort *v1, const GLshort *v2);
+ void (QOPENGLF_APIENTRYP Rects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
+ void (QOPENGLF_APIENTRYP Rectiv)(const GLint *v1, const GLint *v2);
+ void (QOPENGLF_APIENTRYP Recti)(GLint x1, GLint y1, GLint x2, GLint y2);
+ void (QOPENGLF_APIENTRYP Rectfv)(const GLfloat *v1, const GLfloat *v2);
+ void (QOPENGLF_APIENTRYP Rectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
+ void (QOPENGLF_APIENTRYP Rectdv)(const GLdouble *v1, const GLdouble *v2);
+ void (QOPENGLF_APIENTRYP Rectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
+ void (QOPENGLF_APIENTRYP RasterPos4sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP RasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w);
+ void (QOPENGLF_APIENTRYP RasterPos4iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP RasterPos4i)(GLint x, GLint y, GLint z, GLint w);
+ void (QOPENGLF_APIENTRYP RasterPos4fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP RasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void (QOPENGLF_APIENTRYP RasterPos4dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP RasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void (QOPENGLF_APIENTRYP RasterPos3sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP RasterPos3s)(GLshort x, GLshort y, GLshort z);
+ void (QOPENGLF_APIENTRYP RasterPos3iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP RasterPos3i)(GLint x, GLint y, GLint z);
+ void (QOPENGLF_APIENTRYP RasterPos3fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP RasterPos3f)(GLfloat x, GLfloat y, GLfloat z);
+ void (QOPENGLF_APIENTRYP RasterPos3dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP RasterPos3d)(GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP RasterPos2sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP RasterPos2s)(GLshort x, GLshort y);
+ void (QOPENGLF_APIENTRYP RasterPos2iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP RasterPos2i)(GLint x, GLint y);
+ void (QOPENGLF_APIENTRYP RasterPos2fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP RasterPos2f)(GLfloat x, GLfloat y);
+ void (QOPENGLF_APIENTRYP RasterPos2dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP RasterPos2d)(GLdouble x, GLdouble y);
+ void (QOPENGLF_APIENTRYP Normal3sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP Normal3s)(GLshort nx, GLshort ny, GLshort nz);
+ void (QOPENGLF_APIENTRYP Normal3iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP Normal3i)(GLint nx, GLint ny, GLint nz);
+ void (QOPENGLF_APIENTRYP Normal3fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP Normal3f)(GLfloat nx, GLfloat ny, GLfloat nz);
+ void (QOPENGLF_APIENTRYP Normal3dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP Normal3d)(GLdouble nx, GLdouble ny, GLdouble nz);
+ void (QOPENGLF_APIENTRYP Normal3bv)(const GLbyte *v);
+ void (QOPENGLF_APIENTRYP Normal3b)(GLbyte nx, GLbyte ny, GLbyte nz);
+ void (QOPENGLF_APIENTRYP Indexsv)(const GLshort *c);
+ void (QOPENGLF_APIENTRYP Indexs)(GLshort c);
+ void (QOPENGLF_APIENTRYP Indexiv)(const GLint *c);
+ void (QOPENGLF_APIENTRYP Indexi)(GLint c);
+ void (QOPENGLF_APIENTRYP Indexfv)(const GLfloat *c);
+ void (QOPENGLF_APIENTRYP Indexf)(GLfloat c);
+ void (QOPENGLF_APIENTRYP Indexdv)(const GLdouble *c);
+ void (QOPENGLF_APIENTRYP Indexd)(GLdouble c);
+ void (QOPENGLF_APIENTRYP End)();
+ void (QOPENGLF_APIENTRYP EdgeFlagv)(const GLboolean *flag);
+ void (QOPENGLF_APIENTRYP EdgeFlag)(GLboolean flag);
+ void (QOPENGLF_APIENTRYP Color4usv)(const GLushort *v);
+ void (QOPENGLF_APIENTRYP Color4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha);
+ void (QOPENGLF_APIENTRYP Color4uiv)(const GLuint *v);
+ void (QOPENGLF_APIENTRYP Color4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha);
+ void (QOPENGLF_APIENTRYP Color4ubv)(const GLubyte *v);
+ void (QOPENGLF_APIENTRYP Color4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ void (QOPENGLF_APIENTRYP Color4sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP Color4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha);
+ void (QOPENGLF_APIENTRYP Color4iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP Color4i)(GLint red, GLint green, GLint blue, GLint alpha);
+ void (QOPENGLF_APIENTRYP Color4fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP Color4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ void (QOPENGLF_APIENTRYP Color4dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP Color4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
+ void (QOPENGLF_APIENTRYP Color4bv)(const GLbyte *v);
+ void (QOPENGLF_APIENTRYP Color4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
+ void (QOPENGLF_APIENTRYP Color3usv)(const GLushort *v);
+ void (QOPENGLF_APIENTRYP Color3us)(GLushort red, GLushort green, GLushort blue);
+ void (QOPENGLF_APIENTRYP Color3uiv)(const GLuint *v);
+ void (QOPENGLF_APIENTRYP Color3ui)(GLuint red, GLuint green, GLuint blue);
+ void (QOPENGLF_APIENTRYP Color3ubv)(const GLubyte *v);
+ void (QOPENGLF_APIENTRYP Color3ub)(GLubyte red, GLubyte green, GLubyte blue);
+ void (QOPENGLF_APIENTRYP Color3sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP Color3s)(GLshort red, GLshort green, GLshort blue);
+ void (QOPENGLF_APIENTRYP Color3iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP Color3i)(GLint red, GLint green, GLint blue);
+ void (QOPENGLF_APIENTRYP Color3fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP Color3f)(GLfloat red, GLfloat green, GLfloat blue);
+ void (QOPENGLF_APIENTRYP Color3dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP Color3d)(GLdouble red, GLdouble green, GLdouble blue);
+ void (QOPENGLF_APIENTRYP Color3bv)(const GLbyte *v);
+ void (QOPENGLF_APIENTRYP Color3b)(GLbyte red, GLbyte green, GLbyte blue);
+ void (QOPENGLF_APIENTRYP Bitmap)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
+ void (QOPENGLF_APIENTRYP Begin)(GLenum mode);
+ void (QOPENGLF_APIENTRYP ListBase)(GLuint base);
+ GLuint (QOPENGLF_APIENTRYP GenLists)(GLsizei range);
+ void (QOPENGLF_APIENTRYP DeleteLists)(GLuint list, GLsizei range);
+ void (QOPENGLF_APIENTRYP CallLists)(GLsizei n, GLenum type, const GLvoid *lists);
+ void (QOPENGLF_APIENTRYP CallList)(GLuint list);
+ void (QOPENGLF_APIENTRYP EndList)();
+ void (QOPENGLF_APIENTRYP NewList)(GLuint list, GLenum mode);
+
+};
+
+class QOpenGLFunctions_1_1_DeprecatedBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_1_DeprecatedBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.1 deprecated functions
+ void (QOPENGLF_APIENTRYP PushClientAttrib)(GLbitfield mask);
+ void (QOPENGLF_APIENTRYP PopClientAttrib)();
+ void (QOPENGLF_APIENTRYP PrioritizeTextures)(GLsizei n, const GLuint *textures, const GLfloat *priorities);
+ GLboolean (QOPENGLF_APIENTRYP AreTexturesResident)(GLsizei n, const GLuint *textures, GLboolean *residences);
+ void (QOPENGLF_APIENTRYP VertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP TexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP NormalPointer)(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP InterleavedArrays)(GLenum format, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP IndexPointer)(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP EnableClientState)(GLenum array);
+ void (QOPENGLF_APIENTRYP EdgeFlagPointer)(GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP DisableClientState)(GLenum array);
+ void (QOPENGLF_APIENTRYP ColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP ArrayElement)(GLint i);
+
+};
+
+class QOpenGLFunctions_1_2_DeprecatedBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_2_DeprecatedBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.2 deprecated functions
+ void (QOPENGLF_APIENTRYP ResetMinmax)(GLenum target);
+ void (QOPENGLF_APIENTRYP ResetHistogram)(GLenum target);
+ void (QOPENGLF_APIENTRYP Minmax)(GLenum target, GLenum internalformat, GLboolean sink);
+ void (QOPENGLF_APIENTRYP Histogram)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+ void (QOPENGLF_APIENTRYP GetMinmaxParameteriv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetMinmaxParameterfv)(GLenum target, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetMinmax)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void (QOPENGLF_APIENTRYP GetHistogramParameteriv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetHistogramParameterfv)(GLenum target, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetHistogram)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
+ void (QOPENGLF_APIENTRYP SeparableFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
+ void (QOPENGLF_APIENTRYP GetSeparableFilter)(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
+ void (QOPENGLF_APIENTRYP GetConvolutionParameteriv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetConvolutionParameterfv)(GLenum target, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetConvolutionFilter)(GLenum target, GLenum format, GLenum type, GLvoid *image);
+ void (QOPENGLF_APIENTRYP CopyConvolutionFilter2D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+ void (QOPENGLF_APIENTRYP CopyConvolutionFilter1D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void (QOPENGLF_APIENTRYP ConvolutionParameteriv)(GLenum target, GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP ConvolutionParameteri)(GLenum target, GLenum pname, GLint params);
+ void (QOPENGLF_APIENTRYP ConvolutionParameterfv)(GLenum target, GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP ConvolutionParameterf)(GLenum target, GLenum pname, GLfloat params);
+ void (QOPENGLF_APIENTRYP ConvolutionFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
+ void (QOPENGLF_APIENTRYP ConvolutionFilter1D)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
+ void (QOPENGLF_APIENTRYP CopyColorSubTable)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+ void (QOPENGLF_APIENTRYP ColorSubTable)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
+ void (QOPENGLF_APIENTRYP GetColorTableParameteriv)(GLenum target, GLenum pname, GLint *params);
+ void (QOPENGLF_APIENTRYP GetColorTableParameterfv)(GLenum target, GLenum pname, GLfloat *params);
+ void (QOPENGLF_APIENTRYP GetColorTable)(GLenum target, GLenum format, GLenum type, GLvoid *table);
+ void (QOPENGLF_APIENTRYP CopyColorTable)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+ void (QOPENGLF_APIENTRYP ColorTableParameteriv)(GLenum target, GLenum pname, const GLint *params);
+ void (QOPENGLF_APIENTRYP ColorTableParameterfv)(GLenum target, GLenum pname, const GLfloat *params);
+ void (QOPENGLF_APIENTRYP ColorTable)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
+ void (QOPENGLF_APIENTRYP TexImage3D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
+
+};
+
+class QOpenGLFunctions_1_3_DeprecatedBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_3_DeprecatedBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.3 deprecated functions
+ void (QOPENGLF_APIENTRYP MultTransposeMatrixd)(const GLdouble *m);
+ void (QOPENGLF_APIENTRYP MultTransposeMatrixf)(const GLfloat *m);
+ void (QOPENGLF_APIENTRYP LoadTransposeMatrixd)(const GLdouble *m);
+ void (QOPENGLF_APIENTRYP LoadTransposeMatrixf)(const GLfloat *m);
+ void (QOPENGLF_APIENTRYP MultiTexCoord4sv)(GLenum target, const GLshort *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord4s)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
+ void (QOPENGLF_APIENTRYP MultiTexCoord4iv)(GLenum target, const GLint *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord4i)(GLenum target, GLint s, GLint t, GLint r, GLint q);
+ void (QOPENGLF_APIENTRYP MultiTexCoord4fv)(GLenum target, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord4f)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ void (QOPENGLF_APIENTRYP MultiTexCoord4dv)(GLenum target, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord4d)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
+ void (QOPENGLF_APIENTRYP MultiTexCoord3sv)(GLenum target, const GLshort *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord3s)(GLenum target, GLshort s, GLshort t, GLshort r);
+ void (QOPENGLF_APIENTRYP MultiTexCoord3iv)(GLenum target, const GLint *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord3i)(GLenum target, GLint s, GLint t, GLint r);
+ void (QOPENGLF_APIENTRYP MultiTexCoord3fv)(GLenum target, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord3f)(GLenum target, GLfloat s, GLfloat t, GLfloat r);
+ void (QOPENGLF_APIENTRYP MultiTexCoord3dv)(GLenum target, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord3d)(GLenum target, GLdouble s, GLdouble t, GLdouble r);
+ void (QOPENGLF_APIENTRYP MultiTexCoord2sv)(GLenum target, const GLshort *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord2s)(GLenum target, GLshort s, GLshort t);
+ void (QOPENGLF_APIENTRYP MultiTexCoord2iv)(GLenum target, const GLint *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord2i)(GLenum target, GLint s, GLint t);
+ void (QOPENGLF_APIENTRYP MultiTexCoord2fv)(GLenum target, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord2f)(GLenum target, GLfloat s, GLfloat t);
+ void (QOPENGLF_APIENTRYP MultiTexCoord2dv)(GLenum target, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord2d)(GLenum target, GLdouble s, GLdouble t);
+ void (QOPENGLF_APIENTRYP MultiTexCoord1sv)(GLenum target, const GLshort *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord1s)(GLenum target, GLshort s);
+ void (QOPENGLF_APIENTRYP MultiTexCoord1iv)(GLenum target, const GLint *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord1i)(GLenum target, GLint s);
+ void (QOPENGLF_APIENTRYP MultiTexCoord1fv)(GLenum target, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord1f)(GLenum target, GLfloat s);
+ void (QOPENGLF_APIENTRYP MultiTexCoord1dv)(GLenum target, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP MultiTexCoord1d)(GLenum target, GLdouble s);
+ void (QOPENGLF_APIENTRYP ClientActiveTexture)(GLenum texture);
+
+};
+
+class QOpenGLFunctions_1_4_DeprecatedBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_1_4_DeprecatedBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 1.4 deprecated functions
+ void (QOPENGLF_APIENTRYP WindowPos3sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP WindowPos3s)(GLshort x, GLshort y, GLshort z);
+ void (QOPENGLF_APIENTRYP WindowPos3iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP WindowPos3i)(GLint x, GLint y, GLint z);
+ void (QOPENGLF_APIENTRYP WindowPos3fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP WindowPos3f)(GLfloat x, GLfloat y, GLfloat z);
+ void (QOPENGLF_APIENTRYP WindowPos3dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP WindowPos3d)(GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP WindowPos2sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP WindowPos2s)(GLshort x, GLshort y);
+ void (QOPENGLF_APIENTRYP WindowPos2iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP WindowPos2i)(GLint x, GLint y);
+ void (QOPENGLF_APIENTRYP WindowPos2fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP WindowPos2f)(GLfloat x, GLfloat y);
+ void (QOPENGLF_APIENTRYP WindowPos2dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP WindowPos2d)(GLdouble x, GLdouble y);
+ void (QOPENGLF_APIENTRYP SecondaryColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP SecondaryColor3usv)(const GLushort *v);
+ void (QOPENGLF_APIENTRYP SecondaryColor3us)(GLushort red, GLushort green, GLushort blue);
+ void (QOPENGLF_APIENTRYP SecondaryColor3uiv)(const GLuint *v);
+ void (QOPENGLF_APIENTRYP SecondaryColor3ui)(GLuint red, GLuint green, GLuint blue);
+ void (QOPENGLF_APIENTRYP SecondaryColor3ubv)(const GLubyte *v);
+ void (QOPENGLF_APIENTRYP SecondaryColor3ub)(GLubyte red, GLubyte green, GLubyte blue);
+ void (QOPENGLF_APIENTRYP SecondaryColor3sv)(const GLshort *v);
+ void (QOPENGLF_APIENTRYP SecondaryColor3s)(GLshort red, GLshort green, GLshort blue);
+ void (QOPENGLF_APIENTRYP SecondaryColor3iv)(const GLint *v);
+ void (QOPENGLF_APIENTRYP SecondaryColor3i)(GLint red, GLint green, GLint blue);
+ void (QOPENGLF_APIENTRYP SecondaryColor3fv)(const GLfloat *v);
+ void (QOPENGLF_APIENTRYP SecondaryColor3f)(GLfloat red, GLfloat green, GLfloat blue);
+ void (QOPENGLF_APIENTRYP SecondaryColor3dv)(const GLdouble *v);
+ void (QOPENGLF_APIENTRYP SecondaryColor3d)(GLdouble red, GLdouble green, GLdouble blue);
+ void (QOPENGLF_APIENTRYP SecondaryColor3bv)(const GLbyte *v);
+ void (QOPENGLF_APIENTRYP SecondaryColor3b)(GLbyte red, GLbyte green, GLbyte blue);
+ void (QOPENGLF_APIENTRYP FogCoordPointer)(GLenum type, GLsizei stride, const GLvoid *pointer);
+ void (QOPENGLF_APIENTRYP FogCoorddv)(const GLdouble *coord);
+ void (QOPENGLF_APIENTRYP FogCoordd)(GLdouble coord);
+ void (QOPENGLF_APIENTRYP FogCoordfv)(const GLfloat *coord);
+ void (QOPENGLF_APIENTRYP FogCoordf)(GLfloat coord);
+
+};
+
+class QOpenGLFunctions_2_0_DeprecatedBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_2_0_DeprecatedBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 2.0 deprecated functions
+ void (QOPENGLF_APIENTRYP VertexAttrib4usv)(GLuint index, const GLushort *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4uiv)(GLuint index, const GLuint *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4ubv)(GLuint index, const GLubyte *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4sv)(GLuint index, const GLshort *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4s)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
+ void (QOPENGLF_APIENTRYP VertexAttrib4iv)(GLuint index, const GLint *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4fv)(GLuint index, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4f)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ void (QOPENGLF_APIENTRYP VertexAttrib4dv)(GLuint index, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4d)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
+ void (QOPENGLF_APIENTRYP VertexAttrib4bv)(GLuint index, const GLbyte *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4Nusv)(GLuint index, const GLushort *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4Nuiv)(GLuint index, const GLuint *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4Nubv)(GLuint index, const GLubyte *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4Nub)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
+ void (QOPENGLF_APIENTRYP VertexAttrib4Nsv)(GLuint index, const GLshort *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4Niv)(GLuint index, const GLint *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib4Nbv)(GLuint index, const GLbyte *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib3sv)(GLuint index, const GLshort *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib3s)(GLuint index, GLshort x, GLshort y, GLshort z);
+ void (QOPENGLF_APIENTRYP VertexAttrib3fv)(GLuint index, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib3f)(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ void (QOPENGLF_APIENTRYP VertexAttrib3dv)(GLuint index, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib3d)(GLuint index, GLdouble x, GLdouble y, GLdouble z);
+ void (QOPENGLF_APIENTRYP VertexAttrib2sv)(GLuint index, const GLshort *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib2s)(GLuint index, GLshort x, GLshort y);
+ void (QOPENGLF_APIENTRYP VertexAttrib2fv)(GLuint index, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib2f)(GLuint index, GLfloat x, GLfloat y);
+ void (QOPENGLF_APIENTRYP VertexAttrib2dv)(GLuint index, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib2d)(GLuint index, GLdouble x, GLdouble y);
+ void (QOPENGLF_APIENTRYP VertexAttrib1sv)(GLuint index, const GLshort *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib1s)(GLuint index, GLshort x);
+ void (QOPENGLF_APIENTRYP VertexAttrib1fv)(GLuint index, const GLfloat *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib1f)(GLuint index, GLfloat x);
+ void (QOPENGLF_APIENTRYP VertexAttrib1dv)(GLuint index, const GLdouble *v);
+ void (QOPENGLF_APIENTRYP VertexAttrib1d)(GLuint index, GLdouble x);
+
+};
+
+class QOpenGLFunctions_3_0_DeprecatedBackend : public QOpenGLVersionFunctionsBackend
+{
+public:
+ QOpenGLFunctions_3_0_DeprecatedBackend(QOpenGLContext *context);
+
+ static QOpenGLVersionStatus versionStatus();
+
+ // OpenGL 3.0 deprecated functions
+ void (QOPENGLF_APIENTRYP VertexAttribI4usv)(GLuint index, const GLushort *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI4ubv)(GLuint index, const GLubyte *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI4sv)(GLuint index, const GLshort *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI4bv)(GLuint index, const GLbyte *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI4uiv)(GLuint index, const GLuint *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI3uiv)(GLuint index, const GLuint *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI2uiv)(GLuint index, const GLuint *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI1uiv)(GLuint index, const GLuint *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI4iv)(GLuint index, const GLint *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI3iv)(GLuint index, const GLint *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI2iv)(GLuint index, const GLint *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI1iv)(GLuint index, const GLint *v);
+ void (QOPENGLF_APIENTRYP VertexAttribI4ui)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ void (QOPENGLF_APIENTRYP VertexAttribI3ui)(GLuint index, GLuint x, GLuint y, GLuint z);
+ void (QOPENGLF_APIENTRYP VertexAttribI2ui)(GLuint index, GLuint x, GLuint y);
+ void (QOPENGLF_APIENTRYP VertexAttribI1ui)(GLuint index, GLuint x);
+ void (QOPENGLF_APIENTRYP VertexAttribI4i)(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ void (QOPENGLF_APIENTRYP VertexAttribI3i)(GLuint index, GLint x, GLint y, GLint z);
+ void (QOPENGLF_APIENTRYP VertexAttribI2i)(GLuint index, GLint x, GLint y);
+ void (QOPENGLF_APIENTRYP VertexAttribI1i)(GLuint index, GLint x);
+
+};
+
+
+#else
+
+// No need for backend classes with function pointers with ES2.
+// All function addresses are independent of context and display.
+
+#endif // !QT_OPENGL_ES_2
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL
+
+#endif
diff --git a/src/gui/opengl/qopenglversionfunctionsfactory.cpp b/src/gui/opengl/qopenglversionfunctionsfactory.cpp
new file mode 100644
index 0000000000..fed2c1537a
--- /dev/null
+++ b/src/gui/opengl/qopenglversionfunctionsfactory.cpp
@@ -0,0 +1,153 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#include "qopenglversionfunctionsfactory_p.h"
+
+#if !defined(QT_OPENGL_ES_2)
+#include "qopenglfunctions_4_3_core.h"
+#include "qopenglfunctions_4_3_compatibility.h"
+#include "qopenglfunctions_4_2_core.h"
+#include "qopenglfunctions_4_2_compatibility.h"
+#include "qopenglfunctions_4_1_core.h"
+#include "qopenglfunctions_4_1_compatibility.h"
+#include "qopenglfunctions_4_0_core.h"
+#include "qopenglfunctions_4_0_compatibility.h"
+#include "qopenglfunctions_3_3_core.h"
+#include "qopenglfunctions_3_3_compatibility.h"
+#include "qopenglfunctions_3_2_core.h"
+#include "qopenglfunctions_3_2_compatibility.h"
+#include "qopenglfunctions_3_1.h"
+#include "qopenglfunctions_3_0.h"
+#include "qopenglfunctions_2_1.h"
+#include "qopenglfunctions_2_0.h"
+#include "qopenglfunctions_1_5.h"
+#include "qopenglfunctions_1_4.h"
+#include "qopenglfunctions_1_3.h"
+#include "qopenglfunctions_1_2.h"
+#include "qopenglfunctions_1_1.h"
+#include "qopenglfunctions_1_0.h"
+#else
+#include "qopenglfunctions_es2.h"
+#endif
+
+QT_BEGIN_NAMESPACE
+
+QAbstractOpenGLFunctions *QOpenGLVersionFunctionsFactory::create(const QOpenGLVersionProfile &versionProfile)
+{
+#if !defined(QT_OPENGL_ES_2)
+ const int major = versionProfile.version().first;
+ const int minor = versionProfile.version().second;
+
+ if (versionProfile.hasProfiles()) {
+ switch (versionProfile.profile()) {
+ case QSurfaceFormat::CoreProfile:
+ if (major == 4 && minor == 3)
+ return new QOpenGLFunctions_4_3_Core;
+ else if (major == 4 && minor == 2)
+ return new QOpenGLFunctions_4_2_Core;
+ else if (major == 4 && minor == 1)
+ return new QOpenGLFunctions_4_1_Core;
+ else if (major == 4 && minor == 0)
+ return new QOpenGLFunctions_4_0_Core;
+ else if (major == 3 && minor == 3)
+ return new QOpenGLFunctions_3_3_Core;
+ else if (major == 3 && minor == 2)
+ return new QOpenGLFunctions_3_2_Core;
+ break;
+
+ case QSurfaceFormat::CompatibilityProfile:
+ if (major == 4 && minor == 3)
+ return new QOpenGLFunctions_4_3_Compatibility;
+ else if (major == 4 && minor == 2)
+ return new QOpenGLFunctions_4_2_Compatibility;
+ else if (major == 4 && minor == 1)
+ return new QOpenGLFunctions_4_1_Compatibility;
+ else if (major == 4 && minor == 0)
+ return new QOpenGLFunctions_4_0_Compatibility;
+ else if (major == 3 && minor == 3)
+ return new QOpenGLFunctions_3_3_Compatibility;
+ else if (major == 3 && minor == 2)
+ return new QOpenGLFunctions_3_2_Compatibility;
+ break;
+
+ case QSurfaceFormat::NoProfile:
+ default:
+ break;
+ };
+ } else {
+ if (major == 3 && minor == 1)
+ return new QOpenGLFunctions_3_1;
+ else if (major == 3 && minor == 0)
+ return new QOpenGLFunctions_3_0;
+ else if (major == 2 && minor == 1)
+ return new QOpenGLFunctions_2_1;
+ else if (major == 2 && minor == 0)
+ return new QOpenGLFunctions_2_0;
+ else if (major == 1 && minor == 5)
+ return new QOpenGLFunctions_1_5;
+ else if (major == 1 && minor == 4)
+ return new QOpenGLFunctions_1_4;
+ else if (major == 1 && minor == 3)
+ return new QOpenGLFunctions_1_3;
+ else if (major == 1 && minor == 2)
+ return new QOpenGLFunctions_1_2;
+ else if (major == 1 && minor == 1)
+ return new QOpenGLFunctions_1_1;
+ else if (major == 1 && minor == 0)
+ return new QOpenGLFunctions_1_0;
+ }
+ return 0;
+#else
+ Q_UNUSED(versionProfile);
+ return new QOpenGLFunctions_ES2;
+#endif
+}
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglversionfunctionsfactory_p.h b/src/gui/opengl/qopenglversionfunctionsfactory_p.h
new file mode 100644
index 0000000000..2312e900f9
--- /dev/null
+++ b/src/gui/opengl/qopenglversionfunctionsfactory_p.h
@@ -0,0 +1,73 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+**
+** This file was generated by glgen version 0.1
+** Command line was: glgen
+**
+** glgen is Copyright (C) 2012 Klaralvdalens Datakonsult AB (KDAB)
+**
+** This is an auto-generated file.
+** Do not edit! All changes made to it will be lost.
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERSIONFUNCTIONFACTORY_P_H
+#define QOPENGLVERSIONFUNCTIONFACTORY_P_H
+
+#ifndef QT_NO_OPENGL
+
+#include <QtCore/QtGlobal>
+#include <QtGui/qopenglcontext.h>
+
+QT_BEGIN_NAMESPACE
+
+class QAbstractOpenGLFunctions;
+
+class QOpenGLVersionFunctionsFactory
+{
+public:
+ static QAbstractOpenGLFunctions *create(const QOpenGLVersionProfile &versionProfile);
+};
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_OPENGL
+
+#endif
diff --git a/src/gui/opengl/qopenglvertexarrayobject.cpp b/src/gui/opengl/qopenglvertexarrayobject.cpp
new file mode 100644
index 0000000000..7f130505ec
--- /dev/null
+++ b/src/gui/opengl/qopenglvertexarrayobject.cpp
@@ -0,0 +1,472 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "qopenglvertexarrayobject.h"
+
+#include <QtCore/private/qobject_p.h>
+#include <QtGui/qopenglcontext.h>
+
+#if !defined(QT_OPENGL_ES_2)
+#include <QtGui/qopenglfunctions_3_0.h>
+#include <QtGui/qopenglfunctions_3_2_core.h>
+#endif
+
+QT_BEGIN_NAMESPACE
+
+class QVertexArrayObjectHelper
+{
+public:
+ QVertexArrayObjectHelper(QOpenGLContext *context)
+ {
+ Q_ASSERT(context);
+#if !defined(QT_OPENGL_ES_2)
+ GenVertexArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenVertexArrays"));
+ DeleteVertexArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteVertexArrays"));
+ BindVertexArray = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glBindVertexArray"));
+#else
+ GenVertexArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenVertexArraysOES"));
+ DeleteVertexArrays = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteVertexArraysOES"));
+ BindVertexArray = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glBindVertexArrayOES"));
+#endif
+ }
+
+ inline void glGenVertexArrays(GLsizei n, GLuint *arrays)
+ {
+ GenVertexArrays(n, arrays);
+ }
+
+ inline void glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+ {
+ DeleteVertexArrays(n, arrays);
+ }
+
+ inline void glBindVertexArray(GLuint array)
+ {
+ BindVertexArray(array);
+ }
+
+private:
+ // Function signatures are equivalent between desktop core, ARB and ES 2 extensions
+ void (QOPENGLF_APIENTRYP GenVertexArrays)(GLsizei n, GLuint *arrays);
+ void (QOPENGLF_APIENTRYP DeleteVertexArrays)(GLsizei n, const GLuint *arrays);
+ void (QOPENGLF_APIENTRYP BindVertexArray)(GLuint array);
+};
+
+class QOpenGLVertexArrayObjectPrivate : public QObjectPrivate
+{
+public:
+ QOpenGLVertexArrayObjectPrivate()
+ : vao(0)
+#if defined(QT_OPENGL_ES_2)
+ , vaoFuncs(0)
+#else
+ , vaoFuncsType(NotSupported)
+#endif
+ , context(0)
+ {
+ }
+
+ ~QOpenGLVertexArrayObjectPrivate()
+ {
+#if defined(QT_OPENGL_ES_2)
+ delete vaoFuncs;
+#else
+ if (vaoFuncsType == ARB)
+ delete vaoFuncs.arb;
+#endif
+ }
+
+ bool create();
+ void destroy();
+ void bind();
+ void release();
+
+ GLuint vao;
+
+#if defined(QT_OPENGL_ES_2)
+ QVertexArrayObjectHelper *vaoFuncs;
+#else
+ union {
+ QOpenGLFunctions_3_0 *core_3_0;
+ QOpenGLFunctions_3_2_Core *core_3_2;
+ QVertexArrayObjectHelper *arb;
+ } vaoFuncs;
+ enum {
+ NotSupported,
+ Core_3_0,
+ Core_3_2,
+ ARB
+ } vaoFuncsType;
+#endif
+ QOpenGLContext *context;
+};
+
+bool QOpenGLVertexArrayObjectPrivate::create()
+{
+ QOpenGLContext *ctx = QOpenGLContext::currentContext();
+ if (!ctx) {
+ qWarning("QOpenGLVertexArrayObject::create() requires a valid current OpenGL context");
+ return false;
+ }
+
+#if defined(QT_OPENGL_ES_2)
+ if (ctx->hasExtension("GL_OES_vertex_array_object")) {
+ vaoFuncs = new QVertexArrayObjectHelper(ctx);
+ vaoFuncs->glGenVertexArrays(1, &vao);
+ }
+#else
+ vaoFuncs.core_3_0 = 0;
+ vaoFuncsType = NotSupported;
+ QSurfaceFormat format = ctx->format();
+ if (format.version() >= qMakePair<int, int>(3,2)) {
+ vaoFuncs.core_3_2 = ctx->versionFunctions<QOpenGLFunctions_3_2_Core>();
+ vaoFuncsType = Core_3_2;
+ vaoFuncs.core_3_2->initializeOpenGLFunctions();
+ vaoFuncs.core_3_2->glGenVertexArrays(1, &vao);
+ } else if (format.majorVersion() >= 3) {
+ vaoFuncs.core_3_0 = ctx->versionFunctions<QOpenGLFunctions_3_0>();
+ vaoFuncsType = Core_3_0;
+ vaoFuncs.core_3_0->initializeOpenGLFunctions();
+ vaoFuncs.core_3_0->glGenVertexArrays(1, &vao);
+ } else if (ctx->hasExtension("GL_ARB_vertex_array_object")) {
+ vaoFuncs.arb = new QVertexArrayObjectHelper(ctx);
+ vaoFuncsType = ARB;
+ vaoFuncs.arb->glGenVertexArrays(1, &vao);
+ }
+#endif
+ return (vao != 0);
+}
+
+void QOpenGLVertexArrayObjectPrivate::destroy()
+{
+ if (!vao)
+ return;
+#if defined(QT_OPENGL_ES_2)
+ if (vaoFuncs)
+ vaoFuncs->glDeleteVertexArrays(1, &vao);
+#else
+ switch (vaoFuncsType) {
+ case Core_3_2:
+ vaoFuncs.core_3_2->glDeleteVertexArrays(1, &vao);
+ break;
+ case Core_3_0:
+ vaoFuncs.core_3_0->glDeleteVertexArrays(1, &vao);
+ break;
+ case ARB:
+ vaoFuncs.arb->glDeleteVertexArrays(1, &vao);
+ break;
+ case NotSupported:
+ break;
+ }
+ vao = 0;
+#endif
+}
+
+void QOpenGLVertexArrayObjectPrivate::bind()
+{
+#if defined(QT_OPENGL_ES_2)
+ if (vaoFuncs)
+ vaoFuncs->glBindVertexArray(vao);
+#else
+ switch (vaoFuncsType) {
+ case Core_3_2:
+ vaoFuncs.core_3_2->glBindVertexArray(vao);
+ break;
+ case Core_3_0:
+ vaoFuncs.core_3_0->glBindVertexArray(vao);
+ break;
+ case ARB:
+ vaoFuncs.arb->glBindVertexArray(vao);
+ break;
+ case NotSupported:
+ break;
+ }
+#endif
+}
+
+void QOpenGLVertexArrayObjectPrivate::release()
+{
+#if defined(QT_OPENGL_ES_2)
+ if (vaoFuncs)
+ vaoFuncs->glBindVertexArray(0);
+#else
+ switch (vaoFuncsType) {
+ case Core_3_2:
+ vaoFuncs.core_3_2->glBindVertexArray(0);
+ break;
+ case Core_3_0:
+ vaoFuncs.core_3_0->glBindVertexArray(0);
+ break;
+ case ARB:
+ vaoFuncs.arb->glBindVertexArray(0);
+ break;
+ case NotSupported:
+ break;
+ }
+#endif
+}
+
+
+/*!
+ \class QOpenGLVertexArrayObject
+ \brief The QOpenGLVertexArrayObject class wraps an OpenGL Vertex Array Object.
+ \inmodule QtGui
+ \since 5.1
+ \ingroup painting-3D
+
+ A Vertex Array Object (VAO) is an OpenGL container object that encapsulates
+ the state needed to specify per-vertex attribute data to the OpenGL pipeline.
+ To put it another way, a VAO remembers the states of buffer objects (see
+ QOpenGLBuffer) and their associated state (e.g. vertex attribute divisors).
+ This allows a very easy and efficient method of switching between OpenGL buffer
+ states for rendering different "objects" in a scene. The QOpenGLVertexArrayObject
+ class is a thin wrapper around an OpenGL VAO.
+
+ For the desktop, VAOs are supported as a core feature in OpenGL 3.0 or newer and by the
+ GL_ARB_vertex_array_object for older versions. On OpenGL ES 2, VAOs are provided by
+ the optional GL_OES_vertex_array_object extension. You can check the version of
+ OpenGL with QOpenGLContext::surfaceFormat() and check for the presence of extensions
+ with QOpenGLContext::hasExtension().
+
+ As with the other Qt OpenGL classes, QOpenGLVertexArrayObject has a create()
+ function to create the underlying OpenGL object. This is to allow the developer to
+ ensure that there is a valid current OpenGL context at the time.
+
+ Once you have successfully created a VAO the typical usage pattern is:
+
+ \list
+ \li In scene initialization function, for each visual object:
+ \list
+ \li Bind the VAO
+ \li Set vertex data state for this visual object (vertices, normals, texture coordinates etc.)
+ \li Unbind (release()) the VAO
+ \endlist
+ \li In render function, for each visual object:
+ \list
+ \li Bind the VAO (and shader program if needed)
+ \li Call a glDraw*() function
+ \li Unbind (release()) the VAO
+ \endlist
+ \endlist
+
+ The act of binding the VAO in the render function has the effect of restoring
+ all of the vertex data state setup in the initialization phase. In this way we can
+ set a great deal of state when setting up a VAO and efficiently switch between
+ state sets of objects to be rendered. Using VAOs also allows the OpenGL driver
+ to amortise the validation checks of the vertex data.
+
+ \note Vertex Array Objects, like all other OpenGL container objects, are specific
+ to the context for which they were created and cannot be shared amongst a
+ context group.
+
+ \sa QOpenGLVertexArrayObject::Binder, QOpenGLBuffer
+*/
+
+/*!
+ Creates a QOpenGLVertexArrayObject with the given \a parent. You must call create()
+ with a valid OpenGL context before using.
+*/
+QOpenGLVertexArrayObject::QOpenGLVertexArrayObject(QObject* parent)
+ : QObject(*new QOpenGLVertexArrayObjectPrivate, parent)
+{
+}
+
+/*!
+ \internal
+*/
+QOpenGLVertexArrayObject::QOpenGLVertexArrayObject(QOpenGLVertexArrayObjectPrivate &dd)
+ : QObject(dd)
+{
+}
+
+/*!
+ Destroys the QOpenGLVertexArrayObject and the underlying OpenGL resource.
+*/
+QOpenGLVertexArrayObject::~QOpenGLVertexArrayObject()
+{
+ QOpenGLContext* ctx = QOpenGLContext::currentContext();
+
+ Q_D(QOpenGLVertexArrayObject);
+ QOpenGLContext *oldContext = 0;
+ if (d->context != ctx) {
+ oldContext = ctx;
+ if (d->context->makeCurrent(oldContext->surface())) {
+ ctx = d->context;
+ } else {
+ qWarning("QOpenGLVertexArrayObject::~QOpenGLVertexArrayObject() failed to make VAO's context current");
+ ctx = 0;
+ }
+ }
+
+ if (ctx)
+ destroy();
+
+ if (oldContext) {
+ if (!oldContext->makeCurrent(oldContext->surface()))
+ qWarning("QOpenGLVertexArrayObject::~QOpenGLVertexArrayObject() failed to restore current context");
+ }
+}
+
+/*!
+ Creates the underlying OpenGL vertex array object. There must be a valid OpenGL context
+ that supports vertex array objects current for this function to succeed.
+
+ Returns true if the OpenGL vertex array object was successfully created.
+*/
+bool QOpenGLVertexArrayObject::create()
+{
+ Q_D(QOpenGLVertexArrayObject);
+ return d->create();
+}
+
+/*!
+ Destroys the underlying OpenGL vertex array object. There must be a valid OpenGL context
+ that supports vertex array objects current for this function to succeed.
+*/
+void QOpenGLVertexArrayObject::destroy()
+{
+ Q_D(QOpenGLVertexArrayObject);
+ d->destroy();
+}
+
+/*!
+ Returns true is the underlying OpenGL vertex array object has been created. If this
+ returns true and the associated OpenGL context is current, then you are able to bind()
+ this object.
+*/
+bool QOpenGLVertexArrayObject::isCreated() const
+{
+ Q_D(const QOpenGLVertexArrayObject);
+ return (d->vao != 0);
+}
+
+/*!
+ Returns the id of the underlying OpenGL vertex array object.
+*/
+GLuint QOpenGLVertexArrayObject::objectId() const
+{
+ Q_D(const QOpenGLVertexArrayObject);
+ return d->vao;
+}
+
+/*!
+ Binds this vertex array object to the OpenGL binding point. From this point on
+ and until release() is called or another vertex array object is bound, any
+ modifications made to vertex data state are stored inside this vertex array object.
+
+ If another vertex array object is then bound you can later restore the set of
+ state associated with this object by calling bind() on this object once again.
+ This allows efficient changes between vertex data states in rendering functions.
+*/
+void QOpenGLVertexArrayObject::bind()
+{
+ Q_D(QOpenGLVertexArrayObject);
+ d->bind();
+}
+
+/*!
+ Unbinds this vertex array object by binding the default vertex array object (id = 0).
+*/
+void QOpenGLVertexArrayObject::release()
+{
+ Q_D(QOpenGLVertexArrayObject);
+ d->release();
+}
+
+
+/*!
+ \class QOpenGLVertexArrayObject::Binder
+ \brief The QOpenGLVertexArrayObject::Binder class is a convenience class to help
+ with the binding and releasing of OpenGL Vertex Array Objects.
+ \inmodule QtGui
+ \reentrant
+ \since 5.1
+ \ingroup painting-3D
+
+ QOpenGLVertexArrayObject::Binder is a simple convenience class that can be used
+ to assist with the binding and releasing of QOpenGLVertexArrayObject instances.
+ This class is to QOpenGLVertexArrayObject as QMutexLocker is to QMutex.
+
+ This class implements the RAII principle which helps to ensure behavior in
+ complex code or in the presence of exceptions.
+
+ The constructor of this class accepts a QOpenGLVertexArrayObject (VAO) as an
+ argument and attempts to bind the VAO, calling QOpenGLVertexArrayObject::create()
+ if necessary. The destructor of this class calls QOpenGLVertexArrayObject::release()
+ which unbinds the VAO.
+
+ If needed the VAO can be temporarily unbound with the release() function and bound
+ once more with rebind().
+
+ \sa QOpenGLVertexArrayObject
+*/
+
+/*!
+ \fn QOpenGLVertexArrayObject::Binder::Binder(QOpenGLVertexArrayObject *v)
+
+ Creates a QOpenGLVertexArrayObject::Binder object and binds \a v by calling
+ QOpenGLVertexArrayObject::bind(). If necessary it first calls
+ QOpenGLVertexArrayObject::create().
+*/
+
+/*!
+ \fn QOpenGLVertexArrayObject::Binder::~Binder()
+
+ Destroys the QOpenGLVertexArrayObject::Binder and releases the associated vertex array object.
+*/
+
+/*!
+ \fn QOpenGLVertexArrayObject::Binder::release()
+
+ Can be used to temporarily release the associated vertex array object.
+
+ \sa rebind()
+*/
+
+/*!
+ \fn QOpenGLVertexArrayObject::Binder::rebind()
+
+ Can be used to rebind the associated vertex array object.
+
+ \sa release()
+*/
+
+QT_END_NAMESPACE
diff --git a/src/gui/opengl/qopenglvertexarrayobject.h b/src/gui/opengl/qopenglvertexarrayobject.h
new file mode 100644
index 0000000000..d5226d3ebd
--- /dev/null
+++ b/src/gui/opengl/qopenglvertexarrayobject.h
@@ -0,0 +1,110 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QOPENGLVERTEXARRAYOBJECT_H
+#define QOPENGLVERTEXARRAYOBJECT_H
+
+#ifndef QT_NO_OPENGL
+
+#include <QtCore/QObject>
+#include <QtGui/qopengl.h>
+
+QT_BEGIN_NAMESPACE
+
+class QOpenGLVertexArrayObjectPrivate;
+
+class Q_GUI_EXPORT QOpenGLVertexArrayObject : public QObject
+{
+ Q_OBJECT
+
+public:
+ explicit QOpenGLVertexArrayObject(QObject* parent = 0);
+ ~QOpenGLVertexArrayObject();
+
+ bool create();
+ void destroy();
+ bool isCreated() const;
+ GLuint objectId() const;
+ void bind();
+ void release();
+
+ class Q_GUI_EXPORT Binder
+ {
+ public:
+ inline Binder(QOpenGLVertexArrayObject *v)
+ : vao(v)
+ {
+ Q_ASSERT(v);
+ if (vao->isCreated() || vao->create())
+ vao->bind();
+ }
+
+ inline ~Binder()
+ {
+ release();
+ }
+
+ inline void release()
+ {
+ vao->release();
+ }
+
+ inline void rebind()
+ {
+ vao->bind();
+ }
+
+ private:
+ Q_DISABLE_COPY(Binder)
+ QOpenGLVertexArrayObject *vao;
+ };
+
+private:
+ Q_DISABLE_COPY(QOpenGLVertexArrayObject)
+ Q_DECLARE_PRIVATE(QOpenGLVertexArrayObject)
+ QOpenGLVertexArrayObject(QOpenGLVertexArrayObjectPrivate &dd);
+};
+
+QT_END_NAMESPACE
+
+#endif
+
+#endif // QOPENGLVERTEXARRAYOBJECT_H