35class Q_OPENGL_EXPORT QOpenGLFunctions_4_5_Core :
public QAbstractOpenGLFunctions
38 QOpenGLFunctions_4_5_Core();
39 ~QOpenGLFunctions_4_5_Core();
41 bool initializeOpenGLFunctions() override;
44 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
45 void glDepthRange(GLdouble nearVal, GLdouble farVal);
46 GLboolean glIsEnabled(GLenum cap);
47 void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
48 void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
49 void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
50 void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
51 void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type,
void *pixels);
52 const GLubyte * glGetString(GLenum name);
53 void glGetIntegerv(GLenum pname, GLint *data);
54 void glGetFloatv(GLenum pname, GLfloat *data);
56 void glGetDoublev(GLenum pname, GLdouble *data);
57 void glGetBooleanv(GLenum pname, GLboolean *data);
58 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type,
void *pixels);
59 void glReadBuffer(GLenum src);
60 void glPixelStorei(GLenum pname, GLint param);
61 void glPixelStoref(GLenum pname, GLfloat param);
62 void glDepthFunc(GLenum func);
63 void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
64 void glStencilFunc(GLenum func, GLint ref, GLuint mask);
65 void glLogicOp(GLenum opcode);
66 void glBlendFunc(GLenum sfactor, GLenum dfactor);
69 void glEnable(GLenum cap);
70 void glDisable(GLenum cap);
71 void glDepthMask(GLboolean flag);
72 void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
73 void glStencilMask(GLuint mask);
74 void glClearDepth(GLdouble depth);
75 void glClearStencil(GLint s);
76 void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
77 void glClear(GLbitfield mask);
78 void glDrawBuffer(GLenum buf);
79 void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type,
const void *pixels);
80 void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type,
const void *pixels);
81 void glTexParameteriv(GLenum target, GLenum pname,
const GLint *params);
82 void glTexParameteri(GLenum target, GLenum pname, GLint param);
83 void glTexParameterfv(GLenum target, GLenum pname,
const GLfloat *params);
84 void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
85 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
86 void glPolygonMode(GLenum face, GLenum mode);
87 void glPointSize(GLfloat size);
88 void glLineWidth(GLfloat width);
89 void glHint(GLenum target, GLenum mode);
90 void glFrontFace(GLenum mode);
91 void glCullFace(GLenum mode);
94 GLboolean glIsTexture(GLuint texture);
95 void glGenTextures(GLsizei n, GLuint *textures);
96 void glDeleteTextures(GLsizei n,
const GLuint *textures);
97 void glBindTexture(GLenum target, GLuint texture);
98 void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type,
const void *pixels);
99 void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type,
const void *pixels);
100 void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
101 void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
102 void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
103 void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
104 void glPolygonOffset(GLfloat factor, GLfloat units);
105 void glDrawElements(GLenum mode, GLsizei count, GLenum type,
const void *indices);
106 void glDrawArrays(GLenum mode, GLint first, GLsizei count);
109 void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
110 void glBlendEquation(GLenum mode);
111 void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
112 void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type,
const void *pixels);
113 void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type,
const void *pixels);
114 void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type,
const void *indices);
117 void glGetCompressedTexImage(GLenum target, GLint level,
void *img);
118 void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize,
const void *data);
119 void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize,
const void *data);
120 void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize,
const void *data);
121 void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize,
const void *data);
122 void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize,
const void *data);
123 void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize,
const void *data);
124 void glSampleCoverage(GLfloat value, GLboolean invert);
125 void glActiveTexture(GLenum texture);
128 void glPointParameteriv(GLenum pname,
const GLint *params);
129 void glPointParameteri(GLenum pname, GLint param);
130 void glPointParameterfv(GLenum pname,
const GLfloat *params);
131 void glPointParameterf(GLenum pname, GLfloat param);
132 void glMultiDrawElements(GLenum mode,
const GLsizei *count, GLenum type,
const void *
const *indices, GLsizei drawcount);
133 void glMultiDrawArrays(GLenum mode,
const GLint *first,
const GLsizei *count, GLsizei drawcount);
134 void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
137 void glGetBufferPointerv(GLenum target, GLenum pname,
void * *params);
138 void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
139 GLboolean glUnmapBuffer(GLenum target);
140 void * glMapBuffer(GLenum target, GLenum access);
141 void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size,
void *data);
142 void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size,
const void *data);
143 void glBufferData(GLenum target, GLsizeiptr size,
const void *data, GLenum usage);
144 GLboolean glIsBuffer(GLuint buffer);
145 void glGenBuffers(GLsizei n, GLuint *buffers);
146 void glDeleteBuffers(GLsizei n,
const GLuint *buffers);
147 void glBindBuffer(GLenum target, GLuint buffer);
148 void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
149 void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
150 void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
151 void glEndQuery(GLenum target);
152 void glBeginQuery(GLenum target, GLuint id);
153 GLboolean glIsQuery(GLuint id);
154 void glDeleteQueries(GLsizei n,
const GLuint *ids);
155 void glGenQueries(GLsizei n, GLuint *ids);
158 void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride,
const void *pointer);
159 void glVertexAttrib4usv(GLuint index,
const GLushort *v);
160 void glVertexAttrib4uiv(GLuint index,
const GLuint *v);
161 void glVertexAttrib4ubv(GLuint index,
const GLubyte *v);
162 void glVertexAttrib4sv(GLuint index,
const GLshort *v);
163 void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
164 void glVertexAttrib4iv(GLuint index,
const GLint *v);
165 void glVertexAttrib4fv(GLuint index,
const GLfloat *v);
166 void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
167 void glVertexAttrib4dv(GLuint index,
const GLdouble *v);
168 void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
169 void glVertexAttrib4bv(GLuint index,
const GLbyte *v);
170 void glVertexAttrib4Nusv(GLuint index,
const GLushort *v);
171 void glVertexAttrib4Nuiv(GLuint index,
const GLuint *v);
172 void glVertexAttrib4Nubv(GLuint index,
const GLubyte *v);
173 void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
174 void glVertexAttrib4Nsv(GLuint index,
const GLshort *v);
175 void glVertexAttrib4Niv(GLuint index,
const GLint *v);
176 void glVertexAttrib4Nbv(GLuint index,
const GLbyte *v);
177 void glVertexAttrib3sv(GLuint index,
const GLshort *v);
178 void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
179 void glVertexAttrib3fv(GLuint index,
const GLfloat *v);
180 void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
181 void glVertexAttrib3dv(GLuint index,
const GLdouble *v);
182 void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
183 void glVertexAttrib2sv(GLuint index,
const GLshort *v);
184 void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
185 void glVertexAttrib2fv(GLuint index,
const GLfloat *v);
186 void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
187 void glVertexAttrib2dv(GLuint index,
const GLdouble *v);
188 void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
189 void glVertexAttrib1sv(GLuint index,
const GLshort *v);
190 void glVertexAttrib1s(GLuint index, GLshort x);
191 void glVertexAttrib1fv(GLuint index,
const GLfloat *v);
192 void glVertexAttrib1f(GLuint index, GLfloat x);
193 void glVertexAttrib1dv(GLuint index,
const GLdouble *v);
194 void glVertexAttrib1d(GLuint index, GLdouble x);
195 void glValidateProgram(GLuint program);
196 void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
197 void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
198 void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
199 void glUniform4iv(GLint location, GLsizei count,
const GLint *value);
200 void glUniform3iv(GLint location, GLsizei count,
const GLint *value);
201 void glUniform2iv(GLint location, GLsizei count,
const GLint *value);
202 void glUniform1iv(GLint location, GLsizei count,
const GLint *value);
203 void glUniform4fv(GLint location, GLsizei count,
const GLfloat *value);
204 void glUniform3fv(GLint location, GLsizei count,
const GLfloat *value);
205 void glUniform2fv(GLint location, GLsizei count,
const GLfloat *value);
206 void glUniform1fv(GLint location, GLsizei count,
const GLfloat *value);
207 void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
208 void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
209 void glUniform2i(GLint location, GLint v0, GLint v1);
210 void glUniform1i(GLint location, GLint v0);
211 void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
212 void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
213 void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
214 void glUniform1f(GLint location, GLfloat v0);
215 void glUseProgram(GLuint program);
216 void glShaderSource(GLuint shader, GLsizei count,
const GLchar*
const *string,
const GLint *length);
217 void glLinkProgram(GLuint program);
218 GLboolean glIsShader(GLuint shader);
219 GLboolean glIsProgram(GLuint program);
220 void glGetVertexAttribPointerv(GLuint index, GLenum pname,
void * *pointer);
221 void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
222 void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
223 void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
224 void glGetUniformiv(GLuint program, GLint location, GLint *params);
225 void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
226 GLint glGetUniformLocation(GLuint program,
const GLchar *name);
227 void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
228 void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
229 void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
230 void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
231 void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
232 GLint glGetAttribLocation(GLuint program,
const GLchar *name);
233 void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
234 void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
235 void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
236 void glEnableVertexAttribArray(GLuint index);
237 void glDisableVertexAttribArray(GLuint index);
238 void glDetachShader(GLuint program, GLuint shader);
239 void glDeleteShader(GLuint shader);
240 void glDeleteProgram(GLuint program);
241 GLuint glCreateShader(GLenum type);
242 GLuint glCreateProgram();
243 void glCompileShader(GLuint shader);
244 void glBindAttribLocation(GLuint program, GLuint index,
const GLchar *name);
245 void glAttachShader(GLuint program, GLuint shader);
246 void glStencilMaskSeparate(GLenum face, GLuint mask);
247 void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
248 void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
249 void glDrawBuffers(GLsizei n,
const GLenum *bufs);
250 void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
253 void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
254 void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
255 void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
256 void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
257 void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
258 void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
261 GLboolean glIsVertexArray(GLuint array);
262 void glGenVertexArrays(GLsizei n, GLuint *arrays);
263 void glDeleteVertexArrays(GLsizei n,
const GLuint *arrays);
264 void glBindVertexArray(GLuint array);
265 void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
266 void * glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
267 void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
268 void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
269 void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
270 void glGenerateMipmap(GLenum target);
271 void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
272 void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
273 void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
274 void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
275 void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
276 GLenum glCheckFramebufferStatus(GLenum target);
277 void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
278 void glDeleteFramebuffers(GLsizei n,
const GLuint *framebuffers);
279 void glBindFramebuffer(GLenum target, GLuint framebuffer);
280 GLboolean glIsFramebuffer(GLuint framebuffer);
281 void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
282 void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
283 void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
284 void glDeleteRenderbuffers(GLsizei n,
const GLuint *renderbuffers);
285 void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
286 GLboolean glIsRenderbuffer(GLuint renderbuffer);
287 const GLubyte * glGetStringi(GLenum name, GLuint index);
288 void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
289 void glClearBufferfv(GLenum buffer, GLint drawbuffer,
const GLfloat *value);
290 void glClearBufferuiv(GLenum buffer, GLint drawbuffer,
const GLuint *value);
291 void glClearBufferiv(GLenum buffer, GLint drawbuffer,
const GLint *value);
292 void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
293 void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
294 void glTexParameterIuiv(GLenum target, GLenum pname,
const GLuint *params);
295 void glTexParameterIiv(GLenum target, GLenum pname,
const GLint *params);
296 void glUniform4uiv(GLint location, GLsizei count,
const GLuint *value);
297 void glUniform3uiv(GLint location, GLsizei count,
const GLuint *value);
298 void glUniform2uiv(GLint location, GLsizei count,
const GLuint *value);
299 void glUniform1uiv(GLint location, GLsizei count,
const GLuint *value);
300 void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
301 void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
302 void glUniform2ui(GLint location, GLuint v0, GLuint v1);
303 void glUniform1ui(GLint location, GLuint v0);
304 GLint glGetFragDataLocation(GLuint program,
const GLchar *name);
305 void glBindFragDataLocation(GLuint program, GLuint color,
const GLchar *name);
306 void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
307 void glVertexAttribI4usv(GLuint index,
const GLushort *v);
308 void glVertexAttribI4ubv(GLuint index,
const GLubyte *v);
309 void glVertexAttribI4sv(GLuint index,
const GLshort *v);
310 void glVertexAttribI4bv(GLuint index,
const GLbyte *v);
311 void glVertexAttribI4uiv(GLuint index,
const GLuint *v);
312 void glVertexAttribI3uiv(GLuint index,
const GLuint *v);
313 void glVertexAttribI2uiv(GLuint index,
const GLuint *v);
314 void glVertexAttribI1uiv(GLuint index,
const GLuint *v);
315 void glVertexAttribI4iv(GLuint index,
const GLint *v);
316 void glVertexAttribI3iv(GLuint index,
const GLint *v);
317 void glVertexAttribI2iv(GLuint index,
const GLint *v);
318 void glVertexAttribI1iv(GLuint index,
const GLint *v);
319 void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
320 void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
321 void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
322 void glVertexAttribI1ui(GLuint index, GLuint x);
323 void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
324 void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
325 void glVertexAttribI2i(GLuint index, GLint x, GLint y);
326 void glVertexAttribI1i(GLuint index, GLint x);
327 void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
328 void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
329 void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride,
const void *pointer);
330 void glEndConditionalRender();
331 void glBeginConditionalRender(GLuint id, GLenum mode);
332 void glClampColor(GLenum target, GLenum clamp);
333 void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
334 void glTransformFeedbackVaryings(GLuint program, GLsizei count,
const GLchar*
const *varyings, GLenum bufferMode);
335 void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
336 void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
337 void glEndTransformFeedback();
338 void glBeginTransformFeedback(GLenum primitiveMode);
339 GLboolean glIsEnabledi(GLenum target, GLuint index);
340 void glDisablei(GLenum target, GLuint index);
341 void glEnablei(GLenum target, GLuint index);
342 void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
343 void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
344 void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
347 void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
348 void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
349 void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
350 GLuint glGetUniformBlockIndex(GLuint program,
const GLchar *uniformBlockName);
351 void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
352 void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount,
const GLuint *uniformIndices, GLenum pname, GLint *params);
353 void glGetUniformIndices(GLuint program, GLsizei uniformCount,
const GLchar *
const *uniformNames, GLuint *uniformIndices);
354 void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
355 void glPrimitiveRestartIndex(GLuint index);
356 void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
357 void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type,
const void *indices, GLsizei instancecount);
358 void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
361 void glSampleMaski(GLuint maskNumber, GLbitfield mask);
362 void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
363 void glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
364 void glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
365 void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
366 void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
367 void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
368 void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
369 void glGetInteger64v(GLenum pname, GLint64 *data);
370 void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
371 GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
372 void glDeleteSync(GLsync sync);
373 GLboolean glIsSync(GLsync sync);
374 GLsync glFenceSync(GLenum condition, GLbitfield flags);
375 void glProvokingVertex(GLenum mode);
376 void glMultiDrawElementsBaseVertex(GLenum mode,
const GLsizei *count, GLenum type,
const void *
const *indices, GLsizei drawcount,
const GLint *basevertex);
377 void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type,
const void *indices, GLsizei instancecount, GLint basevertex);
378 void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type,
const void *indices, GLint basevertex);
379 void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type,
const void *indices, GLint basevertex);
382 void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized,
const GLuint *value);
383 void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
384 void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized,
const GLuint *value);
385 void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
386 void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized,
const GLuint *value);
387 void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
388 void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized,
const GLuint *value);
389 void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
390 void glVertexAttribDivisor(GLuint index, GLuint divisor);
391 void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
392 void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
393 void glQueryCounter(GLuint id, GLenum target);
394 void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
395 void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
396 void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
397 void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
398 void glSamplerParameterIuiv(GLuint sampler, GLenum pname,
const GLuint *param);
399 void glSamplerParameterIiv(GLuint sampler, GLenum pname,
const GLint *param);
400 void glSamplerParameterfv(GLuint sampler, GLenum pname,
const GLfloat *param);
401 void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
402 void glSamplerParameteriv(GLuint sampler, GLenum pname,
const GLint *param);
403 void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
404 void glBindSampler(GLuint unit, GLuint sampler);
405 GLboolean glIsSampler(GLuint sampler);
406 void glDeleteSamplers(GLsizei count,
const GLuint *samplers);
407 void glGenSamplers(GLsizei count, GLuint *samplers);
408 GLint glGetFragDataIndex(GLuint program,
const GLchar *name);
409 void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index,
const GLchar *name);
412 void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
413 void glEndQueryIndexed(GLenum target, GLuint index);
414 void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
415 void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
416 void glDrawTransformFeedback(GLenum mode, GLuint id);
417 void glResumeTransformFeedback();
418 void glPauseTransformFeedback();
419 GLboolean glIsTransformFeedback(GLuint id);
420 void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
421 void glDeleteTransformFeedbacks(GLsizei n,
const GLuint *ids);
422 void glBindTransformFeedback(GLenum target, GLuint id);
423 void glPatchParameterfv(GLenum pname,
const GLfloat *values);
424 void glPatchParameteri(GLenum pname, GLint value);
425 void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
426 void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
427 void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count,
const GLuint *indices);
428 void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
429 void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
430 void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
431 GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype,
const GLchar *name);
432 GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype,
const GLchar *name);
433 void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
434 void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
435 void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
436 void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
437 void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
438 void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
439 void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
440 void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
441 void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
442 void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
443 void glUniform4dv(GLint location, GLsizei count,
const GLdouble *value);
444 void glUniform3dv(GLint location, GLsizei count,
const GLdouble *value);
445 void glUniform2dv(GLint location, GLsizei count,
const GLdouble *value);
446 void glUniform1dv(GLint location, GLsizei count,
const GLdouble *value);
447 void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
448 void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
449 void glUniform2d(GLint location, GLdouble x, GLdouble y);
450 void glUniform1d(GLint location, GLdouble x);
451 void glDrawElementsIndirect(GLenum mode, GLenum type,
const void *indirect);
452 void glDrawArraysIndirect(GLenum mode,
const void *indirect);
453 void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
454 void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
455 void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
456 void glBlendEquationi(GLuint buf, GLenum mode);
457 void glMinSampleShading(GLfloat value);
460 void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
461 void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
462 void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
463 void glDepthRangeArrayv(GLuint first, GLsizei count,
const GLdouble *v);
464 void glScissorIndexedv(GLuint index,
const GLint *v);
465 void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
466 void glScissorArrayv(GLuint first, GLsizei count,
const GLint *v);
467 void glViewportIndexedfv(GLuint index,
const GLfloat *v);
468 void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
469 void glViewportArrayv(GLuint first, GLsizei count,
const GLfloat *v);
470 void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
471 void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride,
const void *pointer);
472 void glVertexAttribL4dv(GLuint index,
const GLdouble *v);
473 void glVertexAttribL3dv(GLuint index,
const GLdouble *v);
474 void glVertexAttribL2dv(GLuint index,
const GLdouble *v);
475 void glVertexAttribL1dv(GLuint index,
const GLdouble *v);
476 void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
477 void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
478 void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
479 void glVertexAttribL1d(GLuint index, GLdouble x);
480 void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
481 void glValidateProgramPipeline(GLuint pipeline);
482 void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
483 void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
484 void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
485 void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
486 void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
487 void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
488 void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
489 void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
490 void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
491 void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
492 void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
493 void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
494 void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
495 void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
496 void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLdouble *value);
497 void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
498 void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
499 void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose,
const GLfloat *value);
500 void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count,
const GLuint *value);
501 void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
502 void glProgramUniform4dv(GLuint program, GLint location, GLsizei count,
const GLdouble *value);
503 void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
504 void glProgramUniform4fv(GLuint program, GLint location, GLsizei count,
const GLfloat *value);
505 void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
506 void glProgramUniform4iv(GLuint program, GLint location, GLsizei count,
const GLint *value);
507 void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
508 void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count,
const GLuint *value);
509 void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
510 void glProgramUniform3dv(GLuint program, GLint location, GLsizei count,
const GLdouble *value);
511 void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
512 void glProgramUniform3fv(GLuint program, GLint location, GLsizei count,
const GLfloat *value);
513 void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
514 void glProgramUniform3iv(GLuint program, GLint location, GLsizei count,
const GLint *value);
515 void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
516 void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count,
const GLuint *value);
517 void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
518 void glProgramUniform2dv(GLuint program, GLint location, GLsizei count,
const GLdouble *value);
519 void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
520 void glProgramUniform2fv(GLuint program, GLint location, GLsizei count,
const GLfloat *value);
521 void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
522 void glProgramUniform2iv(GLuint program, GLint location, GLsizei count,
const GLint *value);
523 void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
524 void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count,
const GLuint *value);
525 void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
526 void glProgramUniform1dv(GLuint program, GLint location, GLsizei count,
const GLdouble *value);
527 void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
528 void glProgramUniform1fv(GLuint program, GLint location, GLsizei count,
const GLfloat *value);
529 void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
530 void glProgramUniform1iv(GLuint program, GLint location, GLsizei count,
const GLint *value);
531 void glProgramUniform1i(GLuint program, GLint location, GLint v0);
532 void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
533 GLboolean glIsProgramPipeline(GLuint pipeline);
534 void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
535 void glDeleteProgramPipelines(GLsizei n,
const GLuint *pipelines);
536 void glBindProgramPipeline(GLuint pipeline);
537 GLuint glCreateShaderProgramv(GLenum type, GLsizei count,
const GLchar*
const *strings);
538 void glActiveShaderProgram(GLuint pipeline, GLuint program);
539 void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
540 void glProgramParameteri(GLuint program, GLenum pname, GLint value);
541 void glProgramBinary(GLuint program, GLenum binaryFormat,
const void *binary, GLsizei length);
542 void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat,
void *binary);
543 void glClearDepthf(GLfloat dd);
544 void glDepthRangef(GLfloat n, GLfloat f);
545 void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
546 void glShaderBinary(GLsizei count,
const GLuint *shaders, GLenum binaryformat,
const void *binary, GLsizei length);
547 void glReleaseShaderCompiler();
550 void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
551 void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
552 void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
553 void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
554 void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
555 void glMemoryBarrier(GLbitfield barriers);
556 void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
557 void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
558 void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
559 void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type,
const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
560 void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type,
const void *indices, GLsizei instancecount, GLuint baseinstance);
561 void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
564 void glGetObjectPtrLabel(
const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
565 void glObjectPtrLabel(
const void *ptr, GLsizei length,
const GLchar *label);
566 void glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
567 void glObjectLabel(GLenum identifier, GLuint name, GLsizei length,
const GLchar *label);
568 void glPopDebugGroup();
569 void glPushDebugGroup(GLenum source, GLuint id, GLsizei length,
const GLchar *message);
570 GLuint glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
571 void glDebugMessageCallback(GLDEBUGPROC callback,
const void *userParam);
572 void glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length,
const GLchar *buf);
573 void glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count,
const GLuint *ids, GLboolean enabled);
574 void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor);
575 void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex);
576 void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
577 void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
578 void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
579 void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
580 void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
581 void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
582 void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
583 void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
584 void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
585 GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface,
const GLchar *name);
586 GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface,
const GLchar *name);
587 void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount,
const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
588 void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
589 GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface,
const GLchar *name);
590 void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params);
591 void glMultiDrawElementsIndirect(GLenum mode, GLenum type,
const void *indirect, GLsizei drawcount, GLsizei stride);
592 void glMultiDrawArraysIndirect(GLenum mode,
const void *indirect, GLsizei drawcount, GLsizei stride);
593 void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments,
const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
594 void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments,
const GLenum *attachments);
595 void glInvalidateBufferData(GLuint buffer);
596 void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length);
597 void glInvalidateTexImage(GLuint texture, GLint level);
598 void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
599 void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
600 void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
601 void glFramebufferParameteri(GLenum target, GLenum pname, GLint param);
602 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);
603 void glDispatchComputeIndirect(GLintptr indirect);
604 void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
605 void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type,
const void *data);
606 void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type,
const void *data);
609 void glBindVertexBuffers(GLuint first, GLsizei count,
const GLuint *buffers,
const GLintptr *offsets,
const GLsizei *strides);
610 void glBindImageTextures(GLuint first, GLsizei count,
const GLuint *textures);
611 void glBindSamplers(GLuint first, GLsizei count,
const GLuint *samplers);
612 void glBindTextures(GLuint first, GLsizei count,
const GLuint *textures);
613 void glBindBuffersRange(GLenum target, GLuint first, GLsizei count,
const GLuint *buffers,
const GLintptr *offsets,
const GLsizeiptr *sizes);
614 void glBindBuffersBase(GLenum target, GLuint first, GLsizei count,
const GLuint *buffers);
615 void glClearTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type,
const void *data);
616 void glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type,
const void *data);
617 void glBufferStorage(GLenum target, GLsizeiptr size,
const void *data, GLbitfield flags);
620 void glTextureBarrier();
621 void glReadnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize,
void *data);
622 void glGetnUniformuiv(GLuint program, GLint location, GLsizei bufSize, GLuint *params);
623 void glGetnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params);
624 void glGetnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
625 void glGetnUniformdv(GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
626 void glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize,
void *pixels);
627 void glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize,
void *pixels);
628 GLenum glGetGraphicsResetStatus();
629 void glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize,
void *pixels);
630 void glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize,
void *pixels);
631 void glMemoryBarrierByRegion(GLbitfield barriers);
632 void glCreateQueries(GLenum target, GLsizei n, GLuint *ids);
633 void glCreateProgramPipelines(GLsizei n, GLuint *pipelines);
634 void glCreateSamplers(GLsizei n, GLuint *samplers);
635 void glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param);
636 void glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param);
637 void glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param);
638 void glVertexArrayBindingDivisor(GLuint vaobj, GLuint bindingindex, GLuint divisor);
639 void glVertexArrayAttribLFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
640 void glVertexArrayAttribIFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
641 void glVertexArrayAttribFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
642 void glVertexArrayAttribBinding(GLuint vaobj, GLuint attribindex, GLuint bindingindex);
643 void glVertexArrayVertexBuffers(GLuint vaobj, GLuint first, GLsizei count,
const GLuint *buffers,
const GLintptr *offsets,
const GLsizei *strides);
644 void glVertexArrayVertexBuffer(GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
645 void glVertexArrayElementBuffer(GLuint vaobj, GLuint buffer);
646 void glEnableVertexArrayAttrib(GLuint vaobj, GLuint index);
647 void glDisableVertexArrayAttrib(GLuint vaobj, GLuint index);
648 void glCreateVertexArrays(GLsizei n, GLuint *arrays);
649 void glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params);
650 void glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params);
651 void glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params);
652 void glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params);
653 void glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params);
654 void glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params);
655 void glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize,
void *pixels);
656 void glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize,
void *pixels);
657 void glBindTextureUnit(GLuint unit, GLuint texture);
658 void glGenerateTextureMipmap(GLuint texture);
659 void glTextureParameteriv(GLuint texture, GLenum pname,
const GLint *param);
660 void glTextureParameterIuiv(GLuint texture, GLenum pname,
const GLuint *params);
661 void glTextureParameterIiv(GLuint texture, GLenum pname,
const GLint *params);
662 void glTextureParameteri(GLuint texture, GLenum pname, GLint param);
663 void glTextureParameterfv(GLuint texture, GLenum pname,
const GLfloat *param);
664 void glTextureParameterf(GLuint texture, GLenum pname, GLfloat param);
665 void glCopyTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
666 void glCopyTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
667 void glCopyTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
668 void glCompressedTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize,
const void *data);
669 void glCompressedTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize,
const void *data);
670 void glCompressedTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize,
const void *data);
671 void glTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type,
const void *pixels);
672 void glTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type,
const void *pixels);
673 void glTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type,
const void *pixels);
674 void glTextureStorage3DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
675 void glTextureStorage2DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
676 void glTextureStorage3D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
677 void glTextureStorage2D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
678 void glTextureStorage1D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width);
679 void glTextureBufferRange(GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizei size);
680 void glTextureBuffer(GLuint texture, GLenum internalformat, GLuint buffer);
681 void glCreateTextures(GLenum target, GLsizei n, GLuint *textures);
682 void glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params);
683 void glNamedRenderbufferStorageMultisample(GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
684 void glNamedRenderbufferStorage(GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
685 void glCreateRenderbuffers(GLsizei n, GLuint *renderbuffers);
686 void glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params);
687 void glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param);
688 GLenum glCheckNamedFramebufferStatus(GLuint framebuffer, GLenum target);
689 void glBlitNamedFramebuffer(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
690 void glClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer, GLfloat depth, GLint stencil);
691 void glClearNamedFramebufferfv(GLuint framebuffer, GLenum buffer, GLint drawbuffer,
const GLfloat *value);
692 void glClearNamedFramebufferuiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer,
const GLuint *value);
693 void glClearNamedFramebufferiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer,
const GLint *value);
694 void glInvalidateNamedFramebufferSubData(GLuint framebuffer, GLsizei numAttachments,
const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
695 void glInvalidateNamedFramebufferData(GLuint framebuffer, GLsizei numAttachments,
const GLenum *attachments);
696 void glNamedFramebufferReadBuffer(GLuint framebuffer, GLenum src);
697 void glNamedFramebufferDrawBuffers(GLuint framebuffer, GLsizei n,
const GLenum *bufs);
698 void glNamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf);
699 void glNamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
700 void glNamedFramebufferTexture(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
701 void glNamedFramebufferParameteri(GLuint framebuffer, GLenum pname, GLint param);
702 void glNamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
703 void glCreateFramebuffers(GLsizei n, GLuint *framebuffers);
704#if QT_OPENGL_REMOVED_SINCE(6
, 8
)
705 void glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size,
void *data)
707 glGetNamedBufferSubData(buffer, offset, GLsizeiptr(size), data);
710 void glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size,
void *data);
711 void glGetNamedBufferPointerv(GLuint buffer, GLenum pname,
void * *params);
712 void glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params);
713 void glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params);
714#if QT_OPENGL_REMOVED_SINCE(6
, 8
)
715 void glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length)
717 glFlushMappedNamedBufferRange(buffer, offset, GLsizeiptr(length));
720 void glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length);
721 GLboolean glUnmapNamedBuffer(GLuint buffer);
722#if QT_OPENGL_REMOVED_SINCE(6
, 8
)
723 void * glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length, GLbitfield access)
725 return glMapNamedBufferRange(buffer, offset, GLsizeiptr(length), access);
728 void * glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);
729 void * glMapNamedBuffer(GLuint buffer, GLenum access);
730#if QT_OPENGL_REMOVED_SINCE(6
, 8
)
731 void glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizei size, GLenum format, GLenum type,
const void *data)
733 glClearNamedBufferSubData(buffer, internalformat, offset, GLsizeiptr(size), format, type, data);
736 void glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type,
const void *data);
737 void glClearNamedBufferData(GLuint buffer, GLenum internalformat, GLenum format, GLenum type,
const void *data);
738#if QT_OPENGL_REMOVED_SINCE(6
, 8
)
739 void glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizei size)
741 glCopyNamedBufferSubData(readBuffer, writeBuffer, readOffset, writeOffset, GLsizeiptr(size));
743 void glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size,
const void *data)
745 glNamedBufferSubData(buffer, offset, GLsizeiptr(size), data);
747 void glNamedBufferData(GLuint buffer, GLsizei size,
const void *data, GLenum usage)
749 glNamedBufferData(buffer, GLsizeiptr(size), data, usage);
751 void glNamedBufferStorage(GLuint buffer, GLsizei size,
const void *data, GLbitfield flags)
753 glNamedBufferStorage(buffer, GLsizeiptr(size), data, flags);
756 void glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
757 void glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size,
const void *data);
758 void glNamedBufferData(GLuint buffer, GLsizeiptr size,
const void *data, GLenum usage);
759 void glNamedBufferStorage(GLuint buffer, GLsizeiptr size,
const void *data, GLbitfield flags);
760 void glCreateBuffers(GLsizei n, GLuint *buffers);
761 void glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param);
762 void glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param);
763 void glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param);
764#if QT_OPENGL_REMOVED_SINCE(6
, 8
)
765 void glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizei size)
767 glTransformFeedbackBufferRange(xfb, index, buffer, offset, GLsizeiptr(size));
770 void glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
771 void glTransformFeedbackBufferBase(GLuint xfb, GLuint index, GLuint buffer);
772 void glCreateTransformFeedbacks(GLsizei n, GLuint *ids);
773 void glClipControl(GLenum origin, GLenum depth);
776 friend class QOpenGLVersionFunctionsFactory;
778 static bool isContextCompatible(QOpenGLContext *context);
779 static QOpenGLVersionProfile versionProfile();
781 QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
782 QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
783 QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
784 QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
785 QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
786 QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
787 QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
788 QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
789 QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
790 QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
791 QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
792 QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
793 QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
794 QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
795 QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
796 QOpenGLFunctions_4_3_CoreBackend* d_4_3_Core;
797 QOpenGLFunctions_4_4_CoreBackend* d_4_4_Core;
798 QOpenGLFunctions_4_5_CoreBackend* d_4_5_Core;