1/****************************************************************************
2**
3** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB)
4** Contact: https://www.qt.io/licensing/
5**
6** This file is part of the QtOpenGLExtensions module of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:BSD$
9** Commercial License Usage
10** Licensees holding valid commercial Qt licenses may use this file in
11** accordance with the commercial license agreement provided with the
12** Software or, alternatively, in accordance with the terms contained in
13** a written agreement between you and The Qt Company. For licensing terms
14** and conditions see https://www.qt.io/terms-conditions. For further
15** information use the contact form at https://www.qt.io/contact-us.
16**
17** BSD License Usage
18** Alternatively, you may use this file under the terms of the BSD license
19** as follows:
20**
21** "Redistribution and use in source and binary forms, with or without
22** modification, are permitted provided that the following conditions are
23** met:
24** * Redistributions of source code must retain the above copyright
25** notice, this list of conditions and the following disclaimer.
26** * Redistributions in binary form must reproduce the above copyright
27** notice, this list of conditions and the following disclaimer in
28** the documentation and/or other materials provided with the
29** distribution.
30** * Neither the name of The Qt Company Ltd nor the names of its
31** contributors may be used to endorse or promote products derived
32** from this software without specific prior written permission.
33**
34**
35** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
36** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
37** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
38** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
39** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
41** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
42** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
43** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
44** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
45** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
46**
47** $QT_END_LICENSE$
48**
49**
50** This file was generated by glgen version 0.1
51** Command line was: glgen
52**
53** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
54**
55** This is an auto-generated file.
56** Do not edit! All changes made to it will be lost.
57**
58****************************************************************************/
59
60#include "qopenglextensions.h"
61#include <QtGui/qopenglcontext.h>
62
63QT_BEGIN_NAMESPACE
64
65QAbstractOpenGLExtension::~QAbstractOpenGLExtension()
66{
67 if (d_ptr)
68 delete d_ptr;
69}
70
71bool QAbstractOpenGLExtension::initializeOpenGLFunctions()
72{
73 Q_D(QAbstractOpenGLExtension);
74 d->initialized = true;
75 return true;
76}
77
78bool QAbstractOpenGLExtension::isInitialized() const
79{
80 Q_D(const QAbstractOpenGLExtension);
81 return d->initialized;
82}
83
84#if !defined(QT_OPENGL_ES_2)
85
86QOpenGLExtension_3DFX_tbuffer::QOpenGLExtension_3DFX_tbuffer()
87 : QAbstractOpenGLExtension(*(new QOpenGLExtension_3DFX_tbufferPrivate))
88{
89}
90
91bool QOpenGLExtension_3DFX_tbuffer::initializeOpenGLFunctions()
92{
93 if (isInitialized())
94 return true;
95
96 QOpenGLContext *context = QOpenGLContext::currentContext();
97 if (!context) {
98 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
99 return false;
100 }
101
102 // Resolve the functions
103 Q_D(QOpenGLExtension_3DFX_tbuffer);
104
105 d->TbufferMask3DFX = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glTbufferMask3DFX"));
106 QAbstractOpenGLExtension::initializeOpenGLFunctions();
107 return true;
108}
109
110QOpenGLExtension_AMD_debug_output::QOpenGLExtension_AMD_debug_output()
111 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_debug_outputPrivate))
112{
113}
114
115bool QOpenGLExtension_AMD_debug_output::initializeOpenGLFunctions()
116{
117 if (isInitialized())
118 return true;
119
120 QOpenGLContext *context = QOpenGLContext::currentContext();
121 if (!context) {
122 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
123 return false;
124 }
125
126 // Resolve the functions
127 Q_D(QOpenGLExtension_AMD_debug_output);
128
129 d->GetDebugMessageLogAMD = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLenum *, GLuint *, GLuint *, GLsizei *, GLchar *)>(context->getProcAddress("glGetDebugMessageLogAMD"));
130 d->DebugMessageCallbackAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLDEBUGPROCAMD , GLvoid *)>(context->getProcAddress("glDebugMessageCallbackAMD"));
131 d->DebugMessageInsertAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLsizei , const GLchar *)>(context->getProcAddress("glDebugMessageInsertAMD"));
132 d->DebugMessageEnableAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , const GLuint *, GLboolean )>(context->getProcAddress("glDebugMessageEnableAMD"));
133 QAbstractOpenGLExtension::initializeOpenGLFunctions();
134 return true;
135}
136
137QOpenGLExtension_AMD_draw_buffers_blend::QOpenGLExtension_AMD_draw_buffers_blend()
138 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_draw_buffers_blendPrivate))
139{
140}
141
142bool QOpenGLExtension_AMD_draw_buffers_blend::initializeOpenGLFunctions()
143{
144 if (isInitialized())
145 return true;
146
147 QOpenGLContext *context = QOpenGLContext::currentContext();
148 if (!context) {
149 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
150 return false;
151 }
152
153 // Resolve the functions
154 Q_D(QOpenGLExtension_AMD_draw_buffers_blend);
155
156 d->BlendEquationSeparateIndexedAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum )>(context->getProcAddress("glBlendEquationSeparateIndexedAMD"));
157 d->BlendEquationIndexedAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glBlendEquationIndexedAMD"));
158 d->BlendFuncSeparateIndexedAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum , GLenum , GLenum )>(context->getProcAddress("glBlendFuncSeparateIndexedAMD"));
159 d->BlendFuncIndexedAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum )>(context->getProcAddress("glBlendFuncIndexedAMD"));
160 QAbstractOpenGLExtension::initializeOpenGLFunctions();
161 return true;
162}
163
164QOpenGLExtension_AMD_multi_draw_indirect::QOpenGLExtension_AMD_multi_draw_indirect()
165 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_multi_draw_indirectPrivate))
166{
167}
168
169bool QOpenGLExtension_AMD_multi_draw_indirect::initializeOpenGLFunctions()
170{
171 if (isInitialized())
172 return true;
173
174 QOpenGLContext *context = QOpenGLContext::currentContext();
175 if (!context) {
176 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
177 return false;
178 }
179
180 // Resolve the functions
181 Q_D(QOpenGLExtension_AMD_multi_draw_indirect);
182
183 d->MultiDrawElementsIndirectAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLvoid *, GLsizei , GLsizei )>(context->getProcAddress("glMultiDrawElementsIndirectAMD"));
184 d->MultiDrawArraysIndirectAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLvoid *, GLsizei , GLsizei )>(context->getProcAddress("glMultiDrawArraysIndirectAMD"));
185 QAbstractOpenGLExtension::initializeOpenGLFunctions();
186 return true;
187}
188
189QOpenGLExtension_AMD_name_gen_delete::QOpenGLExtension_AMD_name_gen_delete()
190 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_name_gen_deletePrivate))
191{
192}
193
194bool QOpenGLExtension_AMD_name_gen_delete::initializeOpenGLFunctions()
195{
196 if (isInitialized())
197 return true;
198
199 QOpenGLContext *context = QOpenGLContext::currentContext();
200 if (!context) {
201 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
202 return false;
203 }
204
205 // Resolve the functions
206 Q_D(QOpenGLExtension_AMD_name_gen_delete);
207
208 d->IsNameAMD = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glIsNameAMD"));
209 d->DeleteNamesAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , const GLuint *)>(context->getProcAddress("glDeleteNamesAMD"));
210 d->GenNamesAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint *)>(context->getProcAddress("glGenNamesAMD"));
211 QAbstractOpenGLExtension::initializeOpenGLFunctions();
212 return true;
213}
214
215QOpenGLExtension_AMD_performance_monitor::QOpenGLExtension_AMD_performance_monitor()
216 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_performance_monitorPrivate))
217{
218}
219
220bool QOpenGLExtension_AMD_performance_monitor::initializeOpenGLFunctions()
221{
222 if (isInitialized())
223 return true;
224
225 QOpenGLContext *context = QOpenGLContext::currentContext();
226 if (!context) {
227 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
228 return false;
229 }
230
231 // Resolve the functions
232 Q_D(QOpenGLExtension_AMD_performance_monitor);
233
234 d->GetPerfMonitorCounterDataAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLsizei , GLuint *, GLint *)>(context->getProcAddress("glGetPerfMonitorCounterDataAMD"));
235 d->EndPerfMonitorAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glEndPerfMonitorAMD"));
236 d->BeginPerfMonitorAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glBeginPerfMonitorAMD"));
237 d->SelectPerfMonitorCountersAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLboolean , GLuint , GLint , GLuint *)>(context->getProcAddress("glSelectPerfMonitorCountersAMD"));
238 d->DeletePerfMonitorsAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glDeletePerfMonitorsAMD"));
239 d->GenPerfMonitorsAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenPerfMonitorsAMD"));
240 d->GetPerfMonitorCounterInfoAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLenum , GLvoid *)>(context->getProcAddress("glGetPerfMonitorCounterInfoAMD"));
241 d->GetPerfMonitorCounterStringAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetPerfMonitorCounterStringAMD"));
242 d->GetPerfMonitorGroupStringAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetPerfMonitorGroupStringAMD"));
243 d->GetPerfMonitorCountersAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint *, GLint *, GLsizei , GLuint *)>(context->getProcAddress("glGetPerfMonitorCountersAMD"));
244 d->GetPerfMonitorGroupsAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint *, GLsizei , GLuint *)>(context->getProcAddress("glGetPerfMonitorGroupsAMD"));
245 QAbstractOpenGLExtension::initializeOpenGLFunctions();
246 return true;
247}
248
249QOpenGLExtension_AMD_sample_positions::QOpenGLExtension_AMD_sample_positions()
250 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_sample_positionsPrivate))
251{
252}
253
254bool QOpenGLExtension_AMD_sample_positions::initializeOpenGLFunctions()
255{
256 if (isInitialized())
257 return true;
258
259 QOpenGLContext *context = QOpenGLContext::currentContext();
260 if (!context) {
261 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
262 return false;
263 }
264
265 // Resolve the functions
266 Q_D(QOpenGLExtension_AMD_sample_positions);
267
268 d->SetMultisamplefvAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , const GLfloat *)>(context->getProcAddress("glSetMultisamplefvAMD"));
269 QAbstractOpenGLExtension::initializeOpenGLFunctions();
270 return true;
271}
272
273QOpenGLExtension_AMD_sparse_texture::QOpenGLExtension_AMD_sparse_texture()
274 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_sparse_texturePrivate))
275{
276}
277
278bool QOpenGLExtension_AMD_sparse_texture::initializeOpenGLFunctions()
279{
280 if (isInitialized())
281 return true;
282
283 QOpenGLContext *context = QOpenGLContext::currentContext();
284 if (!context) {
285 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
286 return false;
287 }
288
289 // Resolve the functions
290 Q_D(QOpenGLExtension_AMD_sparse_texture);
291
292 d->TexStorageSparseAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLsizei , GLsizei , GLsizei , GLbitfield )>(context->getProcAddress("glTexStorageSparseAMD"));
293 QAbstractOpenGLExtension::initializeOpenGLFunctions();
294 return true;
295}
296
297QOpenGLExtension_AMD_stencil_operation_extended::QOpenGLExtension_AMD_stencil_operation_extended()
298 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_stencil_operation_extendedPrivate))
299{
300}
301
302bool QOpenGLExtension_AMD_stencil_operation_extended::initializeOpenGLFunctions()
303{
304 if (isInitialized())
305 return true;
306
307 QOpenGLContext *context = QOpenGLContext::currentContext();
308 if (!context) {
309 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
310 return false;
311 }
312
313 // Resolve the functions
314 Q_D(QOpenGLExtension_AMD_stencil_operation_extended);
315
316 d->StencilOpValueAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glStencilOpValueAMD"));
317 QAbstractOpenGLExtension::initializeOpenGLFunctions();
318 return true;
319}
320
321QOpenGLExtension_AMD_vertex_shader_tesselator::QOpenGLExtension_AMD_vertex_shader_tesselator()
322 : QAbstractOpenGLExtension(*(new QOpenGLExtension_AMD_vertex_shader_tesselatorPrivate))
323{
324}
325
326bool QOpenGLExtension_AMD_vertex_shader_tesselator::initializeOpenGLFunctions()
327{
328 if (isInitialized())
329 return true;
330
331 QOpenGLContext *context = QOpenGLContext::currentContext();
332 if (!context) {
333 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
334 return false;
335 }
336
337 // Resolve the functions
338 Q_D(QOpenGLExtension_AMD_vertex_shader_tesselator);
339
340 d->TessellationModeAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glTessellationModeAMD"));
341 d->TessellationFactorAMD = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glTessellationFactorAMD"));
342 QAbstractOpenGLExtension::initializeOpenGLFunctions();
343 return true;
344}
345
346QOpenGLExtension_APPLE_element_array::QOpenGLExtension_APPLE_element_array()
347 : QAbstractOpenGLExtension(*(new QOpenGLExtension_APPLE_element_arrayPrivate))
348{
349}
350
351bool QOpenGLExtension_APPLE_element_array::initializeOpenGLFunctions()
352{
353 if (isInitialized())
354 return true;
355
356 QOpenGLContext *context = QOpenGLContext::currentContext();
357 if (!context) {
358 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
359 return false;
360 }
361
362 // Resolve the functions
363 Q_D(QOpenGLExtension_APPLE_element_array);
364
365 d->MultiDrawRangeElementArrayAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint , const GLint *, const GLsizei *, GLsizei )>(context->getProcAddress("glMultiDrawRangeElementArrayAPPLE"));
366 d->MultiDrawElementArrayAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *, const GLsizei *, GLsizei )>(context->getProcAddress("glMultiDrawElementArrayAPPLE"));
367 d->DrawRangeElementArrayAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint , GLint , GLsizei )>(context->getProcAddress("glDrawRangeElementArrayAPPLE"));
368 d->DrawElementArrayAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLsizei )>(context->getProcAddress("glDrawElementArrayAPPLE"));
369 d->ElementPointerAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLvoid *)>(context->getProcAddress("glElementPointerAPPLE"));
370 QAbstractOpenGLExtension::initializeOpenGLFunctions();
371 return true;
372}
373
374QOpenGLExtension_APPLE_fence::QOpenGLExtension_APPLE_fence()
375 : QAbstractOpenGLExtension(*(new QOpenGLExtension_APPLE_fencePrivate))
376{
377}
378
379bool QOpenGLExtension_APPLE_fence::initializeOpenGLFunctions()
380{
381 if (isInitialized())
382 return true;
383
384 QOpenGLContext *context = QOpenGLContext::currentContext();
385 if (!context) {
386 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
387 return false;
388 }
389
390 // Resolve the functions
391 Q_D(QOpenGLExtension_APPLE_fence);
392
393 d->FinishObjectAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glFinishObjectAPPLE"));
394 d->TestObjectAPPLE = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glTestObjectAPPLE"));
395 d->FinishFenceAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glFinishFenceAPPLE"));
396 d->TestFenceAPPLE = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glTestFenceAPPLE"));
397 d->IsFenceAPPLE = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsFenceAPPLE"));
398 d->SetFenceAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glSetFenceAPPLE"));
399 d->DeleteFencesAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteFencesAPPLE"));
400 d->GenFencesAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenFencesAPPLE"));
401 QAbstractOpenGLExtension::initializeOpenGLFunctions();
402 return true;
403}
404
405QOpenGLExtension_APPLE_flush_buffer_range::QOpenGLExtension_APPLE_flush_buffer_range()
406 : QAbstractOpenGLExtension(*(new QOpenGLExtension_APPLE_flush_buffer_rangePrivate))
407{
408}
409
410bool QOpenGLExtension_APPLE_flush_buffer_range::initializeOpenGLFunctions()
411{
412 if (isInitialized())
413 return true;
414
415 QOpenGLContext *context = QOpenGLContext::currentContext();
416 if (!context) {
417 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
418 return false;
419 }
420
421 // Resolve the functions
422 Q_D(QOpenGLExtension_APPLE_flush_buffer_range);
423
424 d->FlushMappedBufferRangeAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLintptr , GLsizeiptr )>(context->getProcAddress("glFlushMappedBufferRangeAPPLE"));
425 d->BufferParameteriAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glBufferParameteriAPPLE"));
426 QAbstractOpenGLExtension::initializeOpenGLFunctions();
427 return true;
428}
429
430QOpenGLExtension_APPLE_object_purgeable::QOpenGLExtension_APPLE_object_purgeable()
431 : QAbstractOpenGLExtension(*(new QOpenGLExtension_APPLE_object_purgeablePrivate))
432{
433}
434
435bool QOpenGLExtension_APPLE_object_purgeable::initializeOpenGLFunctions()
436{
437 if (isInitialized())
438 return true;
439
440 QOpenGLContext *context = QOpenGLContext::currentContext();
441 if (!context) {
442 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
443 return false;
444 }
445
446 // Resolve the functions
447 Q_D(QOpenGLExtension_APPLE_object_purgeable);
448
449 d->GetObjectParameterivAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLenum , GLint *)>(context->getProcAddress("glGetObjectParameterivAPPLE"));
450 d->ObjectUnpurgeableAPPLE = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLenum )>(context->getProcAddress("glObjectUnpurgeableAPPLE"));
451 d->ObjectPurgeableAPPLE = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLenum )>(context->getProcAddress("glObjectPurgeableAPPLE"));
452 QAbstractOpenGLExtension::initializeOpenGLFunctions();
453 return true;
454}
455
456QOpenGLExtension_APPLE_texture_range::QOpenGLExtension_APPLE_texture_range()
457 : QAbstractOpenGLExtension(*(new QOpenGLExtension_APPLE_texture_rangePrivate))
458{
459}
460
461bool QOpenGLExtension_APPLE_texture_range::initializeOpenGLFunctions()
462{
463 if (isInitialized())
464 return true;
465
466 QOpenGLContext *context = QOpenGLContext::currentContext();
467 if (!context) {
468 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
469 return false;
470 }
471
472 // Resolve the functions
473 Q_D(QOpenGLExtension_APPLE_texture_range);
474
475 d->GetTexParameterPointervAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLvoid* *)>(context->getProcAddress("glGetTexParameterPointervAPPLE"));
476 d->TextureRangeAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glTextureRangeAPPLE"));
477 QAbstractOpenGLExtension::initializeOpenGLFunctions();
478 return true;
479}
480
481QOpenGLExtension_APPLE_vertex_array_object::QOpenGLExtension_APPLE_vertex_array_object()
482 : QAbstractOpenGLExtension(*(new QOpenGLExtension_APPLE_vertex_array_objectPrivate))
483{
484}
485
486bool QOpenGLExtension_APPLE_vertex_array_object::initializeOpenGLFunctions()
487{
488 if (isInitialized())
489 return true;
490
491 QOpenGLContext *context = QOpenGLContext::currentContext();
492 if (!context) {
493 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
494 return false;
495 }
496
497 // Resolve the functions
498 Q_D(QOpenGLExtension_APPLE_vertex_array_object);
499
500 d->IsVertexArrayAPPLE = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsVertexArrayAPPLE"));
501 d->GenVertexArraysAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenVertexArraysAPPLE"));
502 d->DeleteVertexArraysAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteVertexArraysAPPLE"));
503 d->BindVertexArrayAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glBindVertexArrayAPPLE"));
504 QAbstractOpenGLExtension::initializeOpenGLFunctions();
505 return true;
506}
507
508QOpenGLExtension_APPLE_vertex_array_range::QOpenGLExtension_APPLE_vertex_array_range()
509 : QAbstractOpenGLExtension(*(new QOpenGLExtension_APPLE_vertex_array_rangePrivate))
510{
511}
512
513bool QOpenGLExtension_APPLE_vertex_array_range::initializeOpenGLFunctions()
514{
515 if (isInitialized())
516 return true;
517
518 QOpenGLContext *context = QOpenGLContext::currentContext();
519 if (!context) {
520 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
521 return false;
522 }
523
524 // Resolve the functions
525 Q_D(QOpenGLExtension_APPLE_vertex_array_range);
526
527 d->VertexArrayParameteriAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glVertexArrayParameteriAPPLE"));
528 d->FlushVertexArrayRangeAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLvoid *)>(context->getProcAddress("glFlushVertexArrayRangeAPPLE"));
529 d->VertexArrayRangeAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLvoid *)>(context->getProcAddress("glVertexArrayRangeAPPLE"));
530 QAbstractOpenGLExtension::initializeOpenGLFunctions();
531 return true;
532}
533
534QOpenGLExtension_APPLE_vertex_program_evaluators::QOpenGLExtension_APPLE_vertex_program_evaluators()
535 : QAbstractOpenGLExtension(*(new QOpenGLExtension_APPLE_vertex_program_evaluatorsPrivate))
536{
537}
538
539bool QOpenGLExtension_APPLE_vertex_program_evaluators::initializeOpenGLFunctions()
540{
541 if (isInitialized())
542 return true;
543
544 QOpenGLContext *context = QOpenGLContext::currentContext();
545 if (!context) {
546 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
547 return false;
548 }
549
550 // Resolve the functions
551 Q_D(QOpenGLExtension_APPLE_vertex_program_evaluators);
552
553 d->MapVertexAttrib2fAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLfloat , GLfloat , GLint , GLint , GLfloat , GLfloat , GLint , GLint , const GLfloat *)>(context->getProcAddress("glMapVertexAttrib2fAPPLE"));
554 d->MapVertexAttrib2dAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLdouble , GLdouble , GLint , GLint , GLdouble , GLdouble , GLint , GLint , const GLdouble *)>(context->getProcAddress("glMapVertexAttrib2dAPPLE"));
555 d->MapVertexAttrib1fAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLfloat , GLfloat , GLint , GLint , const GLfloat *)>(context->getProcAddress("glMapVertexAttrib1fAPPLE"));
556 d->MapVertexAttrib1dAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLdouble , GLdouble , GLint , GLint , const GLdouble *)>(context->getProcAddress("glMapVertexAttrib1dAPPLE"));
557 d->IsVertexAttribEnabledAPPLE = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glIsVertexAttribEnabledAPPLE"));
558 d->DisableVertexAttribAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glDisableVertexAttribAPPLE"));
559 d->EnableVertexAttribAPPLE = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glEnableVertexAttribAPPLE"));
560 QAbstractOpenGLExtension::initializeOpenGLFunctions();
561 return true;
562}
563
564QOpenGLExtension_ARB_ES2_compatibility::QOpenGLExtension_ARB_ES2_compatibility()
565 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_ES2_compatibilityPrivate))
566{
567}
568
569bool QOpenGLExtension_ARB_ES2_compatibility::initializeOpenGLFunctions()
570{
571 if (isInitialized())
572 return true;
573
574 QOpenGLContext *context = QOpenGLContext::currentContext();
575 if (!context) {
576 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
577 return false;
578 }
579
580 // Resolve the functions
581 Q_D(QOpenGLExtension_ARB_ES2_compatibility);
582
583 d->ClearDepthf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glClearDepthf"));
584 d->DepthRangef = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLfloat )>(context->getProcAddress("glDepthRangef"));
585 d->GetShaderPrecisionFormat = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *, GLint *)>(context->getProcAddress("glGetShaderPrecisionFormat"));
586 d->ShaderBinary = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *, GLenum , const GLvoid *, GLsizei )>(context->getProcAddress("glShaderBinary"));
587 d->ReleaseShaderCompiler = reinterpret_cast<void (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glReleaseShaderCompiler"));
588 QAbstractOpenGLExtension::initializeOpenGLFunctions();
589 return true;
590}
591
592QOpenGLExtension_ARB_base_instance::QOpenGLExtension_ARB_base_instance()
593 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_base_instancePrivate))
594{
595}
596
597bool QOpenGLExtension_ARB_base_instance::initializeOpenGLFunctions()
598{
599 if (isInitialized())
600 return true;
601
602 QOpenGLContext *context = QOpenGLContext::currentContext();
603 if (!context) {
604 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
605 return false;
606 }
607
608 // Resolve the functions
609 Q_D(QOpenGLExtension_ARB_base_instance);
610
611 d->DrawElementsInstancedBaseVertexBaseInstance = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const void *, GLsizei , GLint , GLuint )>(context->getProcAddress("glDrawElementsInstancedBaseVertexBaseInstance"));
612 d->DrawElementsInstancedBaseInstance = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const void *, GLsizei , GLuint )>(context->getProcAddress("glDrawElementsInstancedBaseInstance"));
613 d->DrawArraysInstancedBaseInstance = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLsizei , GLsizei , GLuint )>(context->getProcAddress("glDrawArraysInstancedBaseInstance"));
614 QAbstractOpenGLExtension::initializeOpenGLFunctions();
615 return true;
616}
617
618QOpenGLExtension_ARB_blend_func_extended::QOpenGLExtension_ARB_blend_func_extended()
619 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_blend_func_extendedPrivate))
620{
621}
622
623bool QOpenGLExtension_ARB_blend_func_extended::initializeOpenGLFunctions()
624{
625 if (isInitialized())
626 return true;
627
628 QOpenGLContext *context = QOpenGLContext::currentContext();
629 if (!context) {
630 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
631 return false;
632 }
633
634 // Resolve the functions
635 Q_D(QOpenGLExtension_ARB_blend_func_extended);
636
637 d->GetFragDataIndex = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , const GLchar *)>(context->getProcAddress("glGetFragDataIndex"));
638 d->BindFragDataLocationIndexed = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint , const GLchar *)>(context->getProcAddress("glBindFragDataLocationIndexed"));
639 QAbstractOpenGLExtension::initializeOpenGLFunctions();
640 return true;
641}
642
643QOpenGLExtension_ARB_cl_event::QOpenGLExtension_ARB_cl_event()
644 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_cl_eventPrivate))
645{
646}
647
648bool QOpenGLExtension_ARB_cl_event::initializeOpenGLFunctions()
649{
650 if (isInitialized())
651 return true;
652
653 QOpenGLContext *context = QOpenGLContext::currentContext();
654 if (!context) {
655 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
656 return false;
657 }
658
659 // Resolve the functions
660 Q_D(QOpenGLExtension_ARB_cl_event);
661
662 d->CreateSyncFromCLeventARB = reinterpret_cast<GLsync (QOPENGLF_APIENTRYP)(struct _cl_context * , struct _cl_event * , GLbitfield )>(context->getProcAddress("glCreateSyncFromCLeventARB"));
663 QAbstractOpenGLExtension::initializeOpenGLFunctions();
664 return true;
665}
666
667QOpenGLExtension_ARB_clear_buffer_object::QOpenGLExtension_ARB_clear_buffer_object()
668 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_clear_buffer_objectPrivate))
669{
670}
671
672bool QOpenGLExtension_ARB_clear_buffer_object::initializeOpenGLFunctions()
673{
674 if (isInitialized())
675 return true;
676
677 QOpenGLContext *context = QOpenGLContext::currentContext();
678 if (!context) {
679 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
680 return false;
681 }
682
683 // Resolve the functions
684 Q_D(QOpenGLExtension_ARB_clear_buffer_object);
685
686 d->ClearBufferSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLintptr , GLsizeiptr , GLenum , GLenum , const void *)>(context->getProcAddress("glClearBufferSubData"));
687 d->ClearBufferData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLenum , const void *)>(context->getProcAddress("glClearBufferData"));
688 QAbstractOpenGLExtension::initializeOpenGLFunctions();
689 return true;
690}
691
692QOpenGLExtension_ARB_color_buffer_float::QOpenGLExtension_ARB_color_buffer_float()
693 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_color_buffer_floatPrivate))
694{
695}
696
697bool QOpenGLExtension_ARB_color_buffer_float::initializeOpenGLFunctions()
698{
699 if (isInitialized())
700 return true;
701
702 QOpenGLContext *context = QOpenGLContext::currentContext();
703 if (!context) {
704 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
705 return false;
706 }
707
708 // Resolve the functions
709 Q_D(QOpenGLExtension_ARB_color_buffer_float);
710
711 d->ClampColorARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum )>(context->getProcAddress("glClampColorARB"));
712 QAbstractOpenGLExtension::initializeOpenGLFunctions();
713 return true;
714}
715
716QOpenGLExtension_ARB_compute_shader::QOpenGLExtension_ARB_compute_shader()
717 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_compute_shaderPrivate))
718{
719}
720
721bool QOpenGLExtension_ARB_compute_shader::initializeOpenGLFunctions()
722{
723 if (isInitialized())
724 return true;
725
726 QOpenGLContext *context = QOpenGLContext::currentContext();
727 if (!context) {
728 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
729 return false;
730 }
731
732 // Resolve the functions
733 Q_D(QOpenGLExtension_ARB_compute_shader);
734
735 d->DispatchComputeIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLintptr )>(context->getProcAddress("glDispatchComputeIndirect"));
736 d->DispatchCompute = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(context->getProcAddress("glDispatchCompute"));
737 QAbstractOpenGLExtension::initializeOpenGLFunctions();
738 return true;
739}
740
741QOpenGLExtension_ARB_copy_buffer::QOpenGLExtension_ARB_copy_buffer()
742 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_copy_bufferPrivate))
743{
744}
745
746bool QOpenGLExtension_ARB_copy_buffer::initializeOpenGLFunctions()
747{
748 if (isInitialized())
749 return true;
750
751 QOpenGLContext *context = QOpenGLContext::currentContext();
752 if (!context) {
753 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
754 return false;
755 }
756
757 // Resolve the functions
758 Q_D(QOpenGLExtension_ARB_copy_buffer);
759
760 d->CopyBufferSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLintptr , GLintptr , GLsizeiptr )>(context->getProcAddress("glCopyBufferSubData"));
761 QAbstractOpenGLExtension::initializeOpenGLFunctions();
762 return true;
763}
764
765QOpenGLExtension_ARB_copy_image::QOpenGLExtension_ARB_copy_image()
766 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_copy_imagePrivate))
767{
768}
769
770bool QOpenGLExtension_ARB_copy_image::initializeOpenGLFunctions()
771{
772 if (isInitialized())
773 return true;
774
775 QOpenGLContext *context = QOpenGLContext::currentContext();
776 if (!context) {
777 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
778 return false;
779 }
780
781 // Resolve the functions
782 Q_D(QOpenGLExtension_ARB_copy_image);
783
784 d->CopyImageSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint , GLint , GLint , GLint , GLuint , GLenum , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei )>(context->getProcAddress("glCopyImageSubData"));
785 QAbstractOpenGLExtension::initializeOpenGLFunctions();
786 return true;
787}
788
789QOpenGLExtension_ARB_debug_output::QOpenGLExtension_ARB_debug_output()
790 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_debug_outputPrivate))
791{
792}
793
794bool QOpenGLExtension_ARB_debug_output::initializeOpenGLFunctions()
795{
796 if (isInitialized())
797 return true;
798
799 QOpenGLContext *context = QOpenGLContext::currentContext();
800 if (!context) {
801 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
802 return false;
803 }
804
805 // Resolve the functions
806 Q_D(QOpenGLExtension_ARB_debug_output);
807
808 d->GetDebugMessageLogARB = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLenum *, GLenum *, GLuint *, GLenum *, GLsizei *, GLchar *)>(context->getProcAddress("glGetDebugMessageLogARB"));
809 d->DebugMessageCallbackARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLDEBUGPROCARB , const GLvoid *)>(context->getProcAddress("glDebugMessageCallbackARB"));
810 d->DebugMessageInsertARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLenum , GLsizei , const GLchar *)>(context->getProcAddress("glDebugMessageInsertARB"));
811 d->DebugMessageControlARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLsizei , const GLuint *, GLboolean )>(context->getProcAddress("glDebugMessageControlARB"));
812 QAbstractOpenGLExtension::initializeOpenGLFunctions();
813 return true;
814}
815
816QOpenGLExtension_ARB_draw_buffers::QOpenGLExtension_ARB_draw_buffers()
817 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_draw_buffersPrivate))
818{
819}
820
821bool QOpenGLExtension_ARB_draw_buffers::initializeOpenGLFunctions()
822{
823 if (isInitialized())
824 return true;
825
826 QOpenGLContext *context = QOpenGLContext::currentContext();
827 if (!context) {
828 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
829 return false;
830 }
831
832 // Resolve the functions
833 Q_D(QOpenGLExtension_ARB_draw_buffers);
834
835 d->DrawBuffersARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLenum *)>(context->getProcAddress("glDrawBuffersARB"));
836 QAbstractOpenGLExtension::initializeOpenGLFunctions();
837 return true;
838}
839
840QOpenGLExtension_ARB_draw_buffers_blend::QOpenGLExtension_ARB_draw_buffers_blend()
841 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_draw_buffers_blendPrivate))
842{
843}
844
845bool QOpenGLExtension_ARB_draw_buffers_blend::initializeOpenGLFunctions()
846{
847 if (isInitialized())
848 return true;
849
850 QOpenGLContext *context = QOpenGLContext::currentContext();
851 if (!context) {
852 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
853 return false;
854 }
855
856 // Resolve the functions
857 Q_D(QOpenGLExtension_ARB_draw_buffers_blend);
858
859 d->BlendFuncSeparateiARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum , GLenum , GLenum )>(context->getProcAddress("glBlendFuncSeparateiARB"));
860 d->BlendFunciARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum )>(context->getProcAddress("glBlendFunciARB"));
861 d->BlendEquationSeparateiARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum )>(context->getProcAddress("glBlendEquationSeparateiARB"));
862 d->BlendEquationiARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum )>(context->getProcAddress("glBlendEquationiARB"));
863 QAbstractOpenGLExtension::initializeOpenGLFunctions();
864 return true;
865}
866
867QOpenGLExtension_ARB_draw_elements_base_vertex::QOpenGLExtension_ARB_draw_elements_base_vertex()
868 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_draw_elements_base_vertexPrivate))
869{
870}
871
872bool QOpenGLExtension_ARB_draw_elements_base_vertex::initializeOpenGLFunctions()
873{
874 if (isInitialized())
875 return true;
876
877 QOpenGLContext *context = QOpenGLContext::currentContext();
878 if (!context) {
879 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
880 return false;
881 }
882
883 // Resolve the functions
884 Q_D(QOpenGLExtension_ARB_draw_elements_base_vertex);
885
886 d->MultiDrawElementsBaseVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLsizei *, GLenum , const GLvoid* const *, GLsizei , const GLint *)>(context->getProcAddress("glMultiDrawElementsBaseVertex"));
887 d->DrawElementsInstancedBaseVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const GLvoid *, GLsizei , GLint )>(context->getProcAddress("glDrawElementsInstancedBaseVertex"));
888 d->DrawRangeElementsBaseVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint , GLuint , GLsizei , GLenum , const GLvoid *, GLint )>(context->getProcAddress("glDrawRangeElementsBaseVertex"));
889 d->DrawElementsBaseVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const GLvoid *, GLint )>(context->getProcAddress("glDrawElementsBaseVertex"));
890 QAbstractOpenGLExtension::initializeOpenGLFunctions();
891 return true;
892}
893
894QOpenGLExtension_ARB_draw_indirect::QOpenGLExtension_ARB_draw_indirect()
895 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_draw_indirectPrivate))
896{
897}
898
899bool QOpenGLExtension_ARB_draw_indirect::initializeOpenGLFunctions()
900{
901 if (isInitialized())
902 return true;
903
904 QOpenGLContext *context = QOpenGLContext::currentContext();
905 if (!context) {
906 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
907 return false;
908 }
909
910 // Resolve the functions
911 Q_D(QOpenGLExtension_ARB_draw_indirect);
912
913 d->DrawElementsIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const GLvoid *)>(context->getProcAddress("glDrawElementsIndirect"));
914 d->DrawArraysIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLvoid *)>(context->getProcAddress("glDrawArraysIndirect"));
915 QAbstractOpenGLExtension::initializeOpenGLFunctions();
916 return true;
917}
918
919QOpenGLExtension_ARB_draw_instanced::QOpenGLExtension_ARB_draw_instanced()
920 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_draw_instancedPrivate))
921{
922}
923
924bool QOpenGLExtension_ARB_draw_instanced::initializeOpenGLFunctions()
925{
926 if (isInitialized())
927 return true;
928
929 QOpenGLContext *context = QOpenGLContext::currentContext();
930 if (!context) {
931 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
932 return false;
933 }
934
935 // Resolve the functions
936 Q_D(QOpenGLExtension_ARB_draw_instanced);
937
938 d->DrawElementsInstancedARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , const GLvoid *, GLsizei )>(context->getProcAddress("glDrawElementsInstancedARB"));
939 d->DrawArraysInstancedARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLsizei , GLsizei )>(context->getProcAddress("glDrawArraysInstancedARB"));
940 QAbstractOpenGLExtension::initializeOpenGLFunctions();
941 return true;
942}
943
944QOpenGLExtension_ARB_framebuffer_no_attachments::QOpenGLExtension_ARB_framebuffer_no_attachments()
945 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_framebuffer_no_attachmentsPrivate))
946{
947}
948
949bool QOpenGLExtension_ARB_framebuffer_no_attachments::initializeOpenGLFunctions()
950{
951 if (isInitialized())
952 return true;
953
954 QOpenGLContext *context = QOpenGLContext::currentContext();
955 if (!context) {
956 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
957 return false;
958 }
959
960 // Resolve the functions
961 Q_D(QOpenGLExtension_ARB_framebuffer_no_attachments);
962
963 d->GetFramebufferParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetFramebufferParameteriv"));
964 d->FramebufferParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint )>(context->getProcAddress("glFramebufferParameteri"));
965 QAbstractOpenGLExtension::initializeOpenGLFunctions();
966 return true;
967}
968
969QOpenGLExtension_ARB_framebuffer_object::QOpenGLExtension_ARB_framebuffer_object()
970 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_framebuffer_objectPrivate))
971{
972}
973
974bool QOpenGLExtension_ARB_framebuffer_object::initializeOpenGLFunctions()
975{
976 if (isInitialized())
977 return true;
978
979 QOpenGLContext *context = QOpenGLContext::currentContext();
980 if (!context) {
981 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
982 return false;
983 }
984
985 // Resolve the functions
986 Q_D(QOpenGLExtension_ARB_framebuffer_object);
987
988 d->FramebufferTextureLayer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLint , GLint )>(context->getProcAddress("glFramebufferTextureLayer"));
989 d->RenderbufferStorageMultisample = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLenum , GLsizei , GLsizei )>(context->getProcAddress("glRenderbufferStorageMultisample"));
990 d->BlitFramebuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint , GLint , GLint , GLint , GLint , GLbitfield , GLenum )>(context->getProcAddress("glBlitFramebuffer"));
991 d->GenerateMipmap = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glGenerateMipmap"));
992 d->GetFramebufferAttachmentParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLint *)>(context->getProcAddress("glGetFramebufferAttachmentParameteriv"));
993 d->FramebufferRenderbuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLuint )>(context->getProcAddress("glFramebufferRenderbuffer"));
994 d->FramebufferTexture3D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLuint , GLint , GLint )>(context->getProcAddress("glFramebufferTexture3D"));
995 d->FramebufferTexture2D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLuint , GLint )>(context->getProcAddress("glFramebufferTexture2D"));
996 d->FramebufferTexture1D = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLuint , GLint )>(context->getProcAddress("glFramebufferTexture1D"));
997 d->CheckFramebufferStatus = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glCheckFramebufferStatus"));
998 d->GenFramebuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenFramebuffers"));
999 d->DeleteFramebuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteFramebuffers"));
1000 d->BindFramebuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBindFramebuffer"));
1001 d->IsFramebuffer = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsFramebuffer"));
1002 d->GetRenderbufferParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetRenderbufferParameteriv"));
1003 d->RenderbufferStorage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLsizei )>(context->getProcAddress("glRenderbufferStorage"));
1004 d->GenRenderbuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenRenderbuffers"));
1005 d->DeleteRenderbuffers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteRenderbuffers"));
1006 d->BindRenderbuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBindRenderbuffer"));
1007 d->IsRenderbuffer = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsRenderbuffer"));
1008 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1009 return true;
1010}
1011
1012QOpenGLExtension_ARB_geometry_shader4::QOpenGLExtension_ARB_geometry_shader4()
1013 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_geometry_shader4Private))
1014{
1015}
1016
1017bool QOpenGLExtension_ARB_geometry_shader4::initializeOpenGLFunctions()
1018{
1019 if (isInitialized())
1020 return true;
1021
1022 QOpenGLContext *context = QOpenGLContext::currentContext();
1023 if (!context) {
1024 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1025 return false;
1026 }
1027
1028 // Resolve the functions
1029 Q_D(QOpenGLExtension_ARB_geometry_shader4);
1030
1031 d->FramebufferTextureFaceARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLint , GLenum )>(context->getProcAddress("glFramebufferTextureFaceARB"));
1032 d->FramebufferTextureLayerARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLint , GLint )>(context->getProcAddress("glFramebufferTextureLayerARB"));
1033 d->FramebufferTextureARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLint )>(context->getProcAddress("glFramebufferTextureARB"));
1034 d->ProgramParameteriARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint )>(context->getProcAddress("glProgramParameteriARB"));
1035 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1036 return true;
1037}
1038
1039QOpenGLExtension_ARB_get_program_binary::QOpenGLExtension_ARB_get_program_binary()
1040 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_get_program_binaryPrivate))
1041{
1042}
1043
1044bool QOpenGLExtension_ARB_get_program_binary::initializeOpenGLFunctions()
1045{
1046 if (isInitialized())
1047 return true;
1048
1049 QOpenGLContext *context = QOpenGLContext::currentContext();
1050 if (!context) {
1051 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1052 return false;
1053 }
1054
1055 // Resolve the functions
1056 Q_D(QOpenGLExtension_ARB_get_program_binary);
1057
1058 d->ProgramParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint )>(context->getProcAddress("glProgramParameteri"));
1059 d->ProgramBinary = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLvoid *, GLsizei )>(context->getProcAddress("glProgramBinary"));
1060 d->GetProgramBinary = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLenum *, GLvoid *)>(context->getProcAddress("glGetProgramBinary"));
1061 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1062 return true;
1063}
1064
1065QOpenGLExtension_ARB_gpu_shader_fp64::QOpenGLExtension_ARB_gpu_shader_fp64()
1066 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_gpu_shader_fp64Private))
1067{
1068}
1069
1070bool QOpenGLExtension_ARB_gpu_shader_fp64::initializeOpenGLFunctions()
1071{
1072 if (isInitialized())
1073 return true;
1074
1075 QOpenGLContext *context = QOpenGLContext::currentContext();
1076 if (!context) {
1077 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1078 return false;
1079 }
1080
1081 // Resolve the functions
1082 Q_D(QOpenGLExtension_ARB_gpu_shader_fp64);
1083
1084 d->GetUniformdv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble *)>(context->getProcAddress("glGetUniformdv"));
1085 d->UniformMatrix4x3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix4x3dv"));
1086 d->UniformMatrix4x2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix4x2dv"));
1087 d->UniformMatrix3x4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix3x4dv"));
1088 d->UniformMatrix3x2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix3x2dv"));
1089 d->UniformMatrix2x4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix2x4dv"));
1090 d->UniformMatrix2x3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix2x3dv"));
1091 d->UniformMatrix4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix4dv"));
1092 d->UniformMatrix3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix3dv"));
1093 d->UniformMatrix2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glUniformMatrix2dv"));
1094 d->Uniform4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glUniform4dv"));
1095 d->Uniform3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glUniform3dv"));
1096 d->Uniform2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glUniform2dv"));
1097 d->Uniform1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glUniform1dv"));
1098 d->Uniform4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glUniform4d"));
1099 d->Uniform3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glUniform3d"));
1100 d->Uniform2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble , GLdouble )>(context->getProcAddress("glUniform2d"));
1101 d->Uniform1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLdouble )>(context->getProcAddress("glUniform1d"));
1102 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1103 return true;
1104}
1105
1106QOpenGLExtension_ARB_instanced_arrays::QOpenGLExtension_ARB_instanced_arrays()
1107 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_instanced_arraysPrivate))
1108{
1109}
1110
1111bool QOpenGLExtension_ARB_instanced_arrays::initializeOpenGLFunctions()
1112{
1113 if (isInitialized())
1114 return true;
1115
1116 QOpenGLContext *context = QOpenGLContext::currentContext();
1117 if (!context) {
1118 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1119 return false;
1120 }
1121
1122 // Resolve the functions
1123 Q_D(QOpenGLExtension_ARB_instanced_arrays);
1124
1125 d->VertexAttribDivisorARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glVertexAttribDivisorARB"));
1126 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1127 return true;
1128}
1129
1130QOpenGLExtension_ARB_internalformat_query::QOpenGLExtension_ARB_internalformat_query()
1131 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_internalformat_queryPrivate))
1132{
1133}
1134
1135bool QOpenGLExtension_ARB_internalformat_query::initializeOpenGLFunctions()
1136{
1137 if (isInitialized())
1138 return true;
1139
1140 QOpenGLContext *context = QOpenGLContext::currentContext();
1141 if (!context) {
1142 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1143 return false;
1144 }
1145
1146 // Resolve the functions
1147 Q_D(QOpenGLExtension_ARB_internalformat_query);
1148
1149 d->GetInternalformativ = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLsizei , GLint *)>(context->getProcAddress("glGetInternalformativ"));
1150 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1151 return true;
1152}
1153
1154QOpenGLExtension_ARB_internalformat_query2::QOpenGLExtension_ARB_internalformat_query2()
1155 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_internalformat_query2Private))
1156{
1157}
1158
1159bool QOpenGLExtension_ARB_internalformat_query2::initializeOpenGLFunctions()
1160{
1161 if (isInitialized())
1162 return true;
1163
1164 QOpenGLContext *context = QOpenGLContext::currentContext();
1165 if (!context) {
1166 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1167 return false;
1168 }
1169
1170 // Resolve the functions
1171 Q_D(QOpenGLExtension_ARB_internalformat_query2);
1172
1173 d->GetInternalformati64v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLsizei , GLint64 *)>(context->getProcAddress("glGetInternalformati64v"));
1174 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1175 return true;
1176}
1177
1178QOpenGLExtension_ARB_invalidate_subdata::QOpenGLExtension_ARB_invalidate_subdata()
1179 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_invalidate_subdataPrivate))
1180{
1181}
1182
1183bool QOpenGLExtension_ARB_invalidate_subdata::initializeOpenGLFunctions()
1184{
1185 if (isInitialized())
1186 return true;
1187
1188 QOpenGLContext *context = QOpenGLContext::currentContext();
1189 if (!context) {
1190 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1191 return false;
1192 }
1193
1194 // Resolve the functions
1195 Q_D(QOpenGLExtension_ARB_invalidate_subdata);
1196
1197 d->InvalidateSubFramebuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLenum *, GLint , GLint , GLsizei , GLsizei )>(context->getProcAddress("glInvalidateSubFramebuffer"));
1198 d->InvalidateFramebuffer = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLenum *)>(context->getProcAddress("glInvalidateFramebuffer"));
1199 d->InvalidateBufferData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glInvalidateBufferData"));
1200 d->InvalidateBufferSubData = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLintptr , GLsizeiptr )>(context->getProcAddress("glInvalidateBufferSubData"));
1201 d->InvalidateTexImage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint )>(context->getProcAddress("glInvalidateTexImage"));
1202 d->InvalidateTexSubImage = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint , GLint , GLsizei , GLsizei , GLsizei )>(context->getProcAddress("glInvalidateTexSubImage"));
1203 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1204 return true;
1205}
1206
1207QOpenGLExtension_ARB_map_buffer_range::QOpenGLExtension_ARB_map_buffer_range()
1208 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_map_buffer_rangePrivate))
1209{
1210}
1211
1212bool QOpenGLExtension_ARB_map_buffer_range::initializeOpenGLFunctions()
1213{
1214 if (isInitialized())
1215 return true;
1216
1217 QOpenGLContext *context = QOpenGLContext::currentContext();
1218 if (!context) {
1219 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1220 return false;
1221 }
1222
1223 // Resolve the functions
1224 Q_D(QOpenGLExtension_ARB_map_buffer_range);
1225
1226 d->FlushMappedBufferRange = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLintptr , GLsizeiptr )>(context->getProcAddress("glFlushMappedBufferRange"));
1227 d->MapBufferRange = reinterpret_cast<GLvoid* (QOPENGLF_APIENTRYP)(GLenum , GLintptr , GLsizeiptr , GLbitfield )>(context->getProcAddress("glMapBufferRange"));
1228 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1229 return true;
1230}
1231
1232QOpenGLExtension_ARB_matrix_palette::QOpenGLExtension_ARB_matrix_palette()
1233 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_matrix_palettePrivate))
1234{
1235}
1236
1237bool QOpenGLExtension_ARB_matrix_palette::initializeOpenGLFunctions()
1238{
1239 if (isInitialized())
1240 return true;
1241
1242 QOpenGLContext *context = QOpenGLContext::currentContext();
1243 if (!context) {
1244 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1245 return false;
1246 }
1247
1248 // Resolve the functions
1249 Q_D(QOpenGLExtension_ARB_matrix_palette);
1250
1251 d->MatrixIndexPointerARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLenum , GLsizei , const GLvoid *)>(context->getProcAddress("glMatrixIndexPointerARB"));
1252 d->MatrixIndexuivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , const GLuint *)>(context->getProcAddress("glMatrixIndexuivARB"));
1253 d->MatrixIndexusvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , const GLushort *)>(context->getProcAddress("glMatrixIndexusvARB"));
1254 d->MatrixIndexubvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , const GLubyte *)>(context->getProcAddress("glMatrixIndexubvARB"));
1255 d->CurrentPaletteMatrixARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint )>(context->getProcAddress("glCurrentPaletteMatrixARB"));
1256 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1257 return true;
1258}
1259
1260QOpenGLExtension_ARB_multi_draw_indirect::QOpenGLExtension_ARB_multi_draw_indirect()
1261 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_multi_draw_indirectPrivate))
1262{
1263}
1264
1265bool QOpenGLExtension_ARB_multi_draw_indirect::initializeOpenGLFunctions()
1266{
1267 if (isInitialized())
1268 return true;
1269
1270 QOpenGLContext *context = QOpenGLContext::currentContext();
1271 if (!context) {
1272 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1273 return false;
1274 }
1275
1276 // Resolve the functions
1277 Q_D(QOpenGLExtension_ARB_multi_draw_indirect);
1278
1279 d->MultiDrawElementsIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , const void *, GLsizei , GLsizei )>(context->getProcAddress("glMultiDrawElementsIndirect"));
1280 d->MultiDrawArraysIndirect = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const void *, GLsizei , GLsizei )>(context->getProcAddress("glMultiDrawArraysIndirect"));
1281 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1282 return true;
1283}
1284
1285QOpenGLExtension_ARB_multisample::QOpenGLExtension_ARB_multisample()
1286 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_multisamplePrivate))
1287{
1288}
1289
1290bool QOpenGLExtension_ARB_multisample::initializeOpenGLFunctions()
1291{
1292 if (isInitialized())
1293 return true;
1294
1295 QOpenGLContext *context = QOpenGLContext::currentContext();
1296 if (!context) {
1297 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1298 return false;
1299 }
1300
1301 // Resolve the functions
1302 Q_D(QOpenGLExtension_ARB_multisample);
1303
1304 d->SampleCoverageARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat , GLboolean )>(context->getProcAddress("glSampleCoverageARB"));
1305 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1306 return true;
1307}
1308
1309QOpenGLExtension_ARB_multitexture::QOpenGLExtension_ARB_multitexture()
1310 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_multitexturePrivate))
1311{
1312}
1313
1314bool QOpenGLExtension_ARB_multitexture::initializeOpenGLFunctions()
1315{
1316 if (isInitialized())
1317 return true;
1318
1319 QOpenGLContext *context = QOpenGLContext::currentContext();
1320 if (!context) {
1321 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1322 return false;
1323 }
1324
1325 // Resolve the functions
1326 Q_D(QOpenGLExtension_ARB_multitexture);
1327
1328 d->MultiTexCoord4svARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLshort *)>(context->getProcAddress("glMultiTexCoord4svARB"));
1329 d->MultiTexCoord4sARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLshort , GLshort , GLshort , GLshort )>(context->getProcAddress("glMultiTexCoord4sARB"));
1330 d->MultiTexCoord4ivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glMultiTexCoord4ivARB"));
1331 d->MultiTexCoord4iARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint , GLint )>(context->getProcAddress("glMultiTexCoord4iARB"));
1332 d->MultiTexCoord4fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glMultiTexCoord4fvARB"));
1333 d->MultiTexCoord4fARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glMultiTexCoord4fARB"));
1334 d->MultiTexCoord4dvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glMultiTexCoord4dvARB"));
1335 d->MultiTexCoord4dARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glMultiTexCoord4dARB"));
1336 d->MultiTexCoord3svARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLshort *)>(context->getProcAddress("glMultiTexCoord3svARB"));
1337 d->MultiTexCoord3sARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLshort , GLshort , GLshort )>(context->getProcAddress("glMultiTexCoord3sARB"));
1338 d->MultiTexCoord3ivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glMultiTexCoord3ivARB"));
1339 d->MultiTexCoord3iARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint , GLint )>(context->getProcAddress("glMultiTexCoord3iARB"));
1340 d->MultiTexCoord3fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glMultiTexCoord3fvARB"));
1341 d->MultiTexCoord3fARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glMultiTexCoord3fARB"));
1342 d->MultiTexCoord3dvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glMultiTexCoord3dvARB"));
1343 d->MultiTexCoord3dARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glMultiTexCoord3dARB"));
1344 d->MultiTexCoord2svARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLshort *)>(context->getProcAddress("glMultiTexCoord2svARB"));
1345 d->MultiTexCoord2sARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLshort , GLshort )>(context->getProcAddress("glMultiTexCoord2sARB"));
1346 d->MultiTexCoord2ivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glMultiTexCoord2ivARB"));
1347 d->MultiTexCoord2iARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLint )>(context->getProcAddress("glMultiTexCoord2iARB"));
1348 d->MultiTexCoord2fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glMultiTexCoord2fvARB"));
1349 d->MultiTexCoord2fARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat , GLfloat )>(context->getProcAddress("glMultiTexCoord2fARB"));
1350 d->MultiTexCoord2dvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glMultiTexCoord2dvARB"));
1351 d->MultiTexCoord2dARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble , GLdouble )>(context->getProcAddress("glMultiTexCoord2dARB"));
1352 d->MultiTexCoord1svARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLshort *)>(context->getProcAddress("glMultiTexCoord1svARB"));
1353 d->MultiTexCoord1sARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLshort )>(context->getProcAddress("glMultiTexCoord1sARB"));
1354 d->MultiTexCoord1ivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLint *)>(context->getProcAddress("glMultiTexCoord1ivARB"));
1355 d->MultiTexCoord1iARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glMultiTexCoord1iARB"));
1356 d->MultiTexCoord1fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glMultiTexCoord1fvARB"));
1357 d->MultiTexCoord1fARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glMultiTexCoord1fARB"));
1358 d->MultiTexCoord1dvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLdouble *)>(context->getProcAddress("glMultiTexCoord1dvARB"));
1359 d->MultiTexCoord1dARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLdouble )>(context->getProcAddress("glMultiTexCoord1dARB"));
1360 d->ClientActiveTextureARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glClientActiveTextureARB"));
1361 d->ActiveTextureARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glActiveTextureARB"));
1362 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1363 return true;
1364}
1365
1366QOpenGLExtension_ARB_occlusion_query::QOpenGLExtension_ARB_occlusion_query()
1367 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_occlusion_queryPrivate))
1368{
1369}
1370
1371bool QOpenGLExtension_ARB_occlusion_query::initializeOpenGLFunctions()
1372{
1373 if (isInitialized())
1374 return true;
1375
1376 QOpenGLContext *context = QOpenGLContext::currentContext();
1377 if (!context) {
1378 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1379 return false;
1380 }
1381
1382 // Resolve the functions
1383 Q_D(QOpenGLExtension_ARB_occlusion_query);
1384
1385 d->GetQueryObjectuivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint *)>(context->getProcAddress("glGetQueryObjectuivARB"));
1386 d->GetQueryObjectivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetQueryObjectivARB"));
1387 d->GetQueryivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLint *)>(context->getProcAddress("glGetQueryivARB"));
1388 d->EndQueryARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glEndQueryARB"));
1389 d->BeginQueryARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLuint )>(context->getProcAddress("glBeginQueryARB"));
1390 d->IsQueryARB = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsQueryARB"));
1391 d->DeleteQueriesARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteQueriesARB"));
1392 d->GenQueriesARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenQueriesARB"));
1393 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1394 return true;
1395}
1396
1397QOpenGLExtension_ARB_point_parameters::QOpenGLExtension_ARB_point_parameters()
1398 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_point_parametersPrivate))
1399{
1400}
1401
1402bool QOpenGLExtension_ARB_point_parameters::initializeOpenGLFunctions()
1403{
1404 if (isInitialized())
1405 return true;
1406
1407 QOpenGLContext *context = QOpenGLContext::currentContext();
1408 if (!context) {
1409 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1410 return false;
1411 }
1412
1413 // Resolve the functions
1414 Q_D(QOpenGLExtension_ARB_point_parameters);
1415
1416 d->PointParameterfvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glPointParameterfvARB"));
1417 d->PointParameterfARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLfloat )>(context->getProcAddress("glPointParameterfARB"));
1418 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1419 return true;
1420}
1421
1422QOpenGLExtension_ARB_program_interface_query::QOpenGLExtension_ARB_program_interface_query()
1423 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_program_interface_queryPrivate))
1424{
1425}
1426
1427bool QOpenGLExtension_ARB_program_interface_query::initializeOpenGLFunctions()
1428{
1429 if (isInitialized())
1430 return true;
1431
1432 QOpenGLContext *context = QOpenGLContext::currentContext();
1433 if (!context) {
1434 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1435 return false;
1436 }
1437
1438 // Resolve the functions
1439 Q_D(QOpenGLExtension_ARB_program_interface_query);
1440
1441 d->GetProgramResourceLocationIndex = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetProgramResourceLocationIndex"));
1442 d->GetProgramResourceLocation = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetProgramResourceLocation"));
1443 d->GetProgramResourceiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLsizei , const GLenum *, GLsizei , GLsizei *, GLint *)>(context->getProcAddress("glGetProgramResourceiv"));
1444 d->GetProgramResourceName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetProgramResourceName"));
1445 d->GetProgramResourceIndex = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetProgramResourceIndex"));
1446 d->GetProgramInterfaceiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum , GLint *)>(context->getProcAddress("glGetProgramInterfaceiv"));
1447 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1448 return true;
1449}
1450
1451QOpenGLExtension_ARB_provoking_vertex::QOpenGLExtension_ARB_provoking_vertex()
1452 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_provoking_vertexPrivate))
1453{
1454}
1455
1456bool QOpenGLExtension_ARB_provoking_vertex::initializeOpenGLFunctions()
1457{
1458 if (isInitialized())
1459 return true;
1460
1461 QOpenGLContext *context = QOpenGLContext::currentContext();
1462 if (!context) {
1463 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1464 return false;
1465 }
1466
1467 // Resolve the functions
1468 Q_D(QOpenGLExtension_ARB_provoking_vertex);
1469
1470 d->ProvokingVertex = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glProvokingVertex"));
1471 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1472 return true;
1473}
1474
1475QOpenGLExtension_ARB_robustness::QOpenGLExtension_ARB_robustness()
1476 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_robustnessPrivate))
1477{
1478}
1479
1480bool QOpenGLExtension_ARB_robustness::initializeOpenGLFunctions()
1481{
1482 if (isInitialized())
1483 return true;
1484
1485 QOpenGLContext *context = QOpenGLContext::currentContext();
1486 if (!context) {
1487 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1488 return false;
1489 }
1490
1491 // Resolve the functions
1492 Q_D(QOpenGLExtension_ARB_robustness);
1493
1494 d->GetnUniformdvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLdouble *)>(context->getProcAddress("glGetnUniformdvARB"));
1495 d->GetnUniformuivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLuint *)>(context->getProcAddress("glGetnUniformuivARB"));
1496 d->GetnUniformivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLint *)>(context->getProcAddress("glGetnUniformivARB"));
1497 d->GetnUniformfvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLfloat *)>(context->getProcAddress("glGetnUniformfvARB"));
1498 d->GetnCompressedTexImageARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLsizei , GLvoid *)>(context->getProcAddress("glGetnCompressedTexImageARB"));
1499 d->ReadnPixelsARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLsizei , GLsizei , GLenum , GLenum , GLsizei , GLvoid *)>(context->getProcAddress("glReadnPixelsARB"));
1500 d->GetnTexImageARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLenum , GLenum , GLsizei , GLvoid *)>(context->getProcAddress("glGetnTexImageARB"));
1501 d->GetnMinmaxARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLboolean , GLenum , GLenum , GLsizei , GLvoid *)>(context->getProcAddress("glGetnMinmaxARB"));
1502 d->GetnHistogramARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLboolean , GLenum , GLenum , GLsizei , GLvoid *)>(context->getProcAddress("glGetnHistogramARB"));
1503 d->GetnSeparableFilterARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLsizei , GLvoid *, GLsizei , GLvoid *, GLvoid *)>(context->getProcAddress("glGetnSeparableFilterARB"));
1504 d->GetnConvolutionFilterARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLsizei , GLvoid *)>(context->getProcAddress("glGetnConvolutionFilterARB"));
1505 d->GetnColorTableARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLenum , GLsizei , GLvoid *)>(context->getProcAddress("glGetnColorTableARB"));
1506 d->GetnPolygonStippleARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLubyte *)>(context->getProcAddress("glGetnPolygonStippleARB"));
1507 d->GetnPixelMapusvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLushort *)>(context->getProcAddress("glGetnPixelMapusvARB"));
1508 d->GetnPixelMapuivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLuint *)>(context->getProcAddress("glGetnPixelMapuivARB"));
1509 d->GetnPixelMapfvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , GLfloat *)>(context->getProcAddress("glGetnPixelMapfvARB"));
1510 d->GetnMapivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLint *)>(context->getProcAddress("glGetnMapivARB"));
1511 d->GetnMapfvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLfloat *)>(context->getProcAddress("glGetnMapfvARB"));
1512 d->GetnMapdvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLsizei , GLdouble *)>(context->getProcAddress("glGetnMapdvARB"));
1513 d->GetGraphicsResetStatusARB = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glGetGraphicsResetStatusARB"));
1514 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1515 return true;
1516}
1517
1518QOpenGLExtension_ARB_sample_shading::QOpenGLExtension_ARB_sample_shading()
1519 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_sample_shadingPrivate))
1520{
1521}
1522
1523bool QOpenGLExtension_ARB_sample_shading::initializeOpenGLFunctions()
1524{
1525 if (isInitialized())
1526 return true;
1527
1528 QOpenGLContext *context = QOpenGLContext::currentContext();
1529 if (!context) {
1530 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1531 return false;
1532 }
1533
1534 // Resolve the functions
1535 Q_D(QOpenGLExtension_ARB_sample_shading);
1536
1537 d->MinSampleShadingARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLfloat )>(context->getProcAddress("glMinSampleShadingARB"));
1538 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1539 return true;
1540}
1541
1542QOpenGLExtension_ARB_sampler_objects::QOpenGLExtension_ARB_sampler_objects()
1543 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_sampler_objectsPrivate))
1544{
1545}
1546
1547bool QOpenGLExtension_ARB_sampler_objects::initializeOpenGLFunctions()
1548{
1549 if (isInitialized())
1550 return true;
1551
1552 QOpenGLContext *context = QOpenGLContext::currentContext();
1553 if (!context) {
1554 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1555 return false;
1556 }
1557
1558 // Resolve the functions
1559 Q_D(QOpenGLExtension_ARB_sampler_objects);
1560
1561 d->GetSamplerParameterIuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint *)>(context->getProcAddress("glGetSamplerParameterIuiv"));
1562 d->GetSamplerParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLfloat *)>(context->getProcAddress("glGetSamplerParameterfv"));
1563 d->GetSamplerParameterIiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetSamplerParameterIiv"));
1564 d->GetSamplerParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetSamplerParameteriv"));
1565 d->SamplerParameterIuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLuint *)>(context->getProcAddress("glSamplerParameterIuiv"));
1566 d->SamplerParameterIiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLint *)>(context->getProcAddress("glSamplerParameterIiv"));
1567 d->SamplerParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLfloat *)>(context->getProcAddress("glSamplerParameterfv"));
1568 d->SamplerParameterf = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLfloat )>(context->getProcAddress("glSamplerParameterf"));
1569 d->SamplerParameteriv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLint *)>(context->getProcAddress("glSamplerParameteriv"));
1570 d->SamplerParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint )>(context->getProcAddress("glSamplerParameteri"));
1571 d->BindSampler = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glBindSampler"));
1572 d->IsSampler = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsSampler"));
1573 d->DeleteSamplers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteSamplers"));
1574 d->GenSamplers = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenSamplers"));
1575 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1576 return true;
1577}
1578
1579QOpenGLExtension_ARB_separate_shader_objects::QOpenGLExtension_ARB_separate_shader_objects()
1580 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_separate_shader_objectsPrivate))
1581{
1582}
1583
1584bool QOpenGLExtension_ARB_separate_shader_objects::initializeOpenGLFunctions()
1585{
1586 if (isInitialized())
1587 return true;
1588
1589 QOpenGLContext *context = QOpenGLContext::currentContext();
1590 if (!context) {
1591 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1592 return false;
1593 }
1594
1595 // Resolve the functions
1596 Q_D(QOpenGLExtension_ARB_separate_shader_objects);
1597
1598 d->GetProgramPipelineInfoLog = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetProgramPipelineInfoLog"));
1599 d->ValidateProgramPipeline = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glValidateProgramPipeline"));
1600 d->ProgramUniformMatrix4x3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix4x3dv"));
1601 d->ProgramUniformMatrix3x4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix3x4dv"));
1602 d->ProgramUniformMatrix4x2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix4x2dv"));
1603 d->ProgramUniformMatrix2x4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix2x4dv"));
1604 d->ProgramUniformMatrix3x2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix3x2dv"));
1605 d->ProgramUniformMatrix2x3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix2x3dv"));
1606 d->ProgramUniformMatrix4x3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix4x3fv"));
1607 d->ProgramUniformMatrix3x4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix3x4fv"));
1608 d->ProgramUniformMatrix4x2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix4x2fv"));
1609 d->ProgramUniformMatrix2x4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix2x4fv"));
1610 d->ProgramUniformMatrix3x2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix3x2fv"));
1611 d->ProgramUniformMatrix2x3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix2x3fv"));
1612 d->ProgramUniformMatrix4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix4dv"));
1613 d->ProgramUniformMatrix3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix3dv"));
1614 d->ProgramUniformMatrix2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLdouble *)>(context->getProcAddress("glProgramUniformMatrix2dv"));
1615 d->ProgramUniformMatrix4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix4fv"));
1616 d->ProgramUniformMatrix3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix3fv"));
1617 d->ProgramUniformMatrix2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glProgramUniformMatrix2fv"));
1618 d->ProgramUniform4uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLuint *)>(context->getProcAddress("glProgramUniform4uiv"));
1619 d->ProgramUniform4ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint , GLuint , GLuint , GLuint )>(context->getProcAddress("glProgramUniform4ui"));
1620 d->ProgramUniform4dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glProgramUniform4dv"));
1621 d->ProgramUniform4d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glProgramUniform4d"));
1622 d->ProgramUniform4fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glProgramUniform4fv"));
1623 d->ProgramUniform4f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glProgramUniform4f"));
1624 d->ProgramUniform4iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLint *)>(context->getProcAddress("glProgramUniform4iv"));
1625 d->ProgramUniform4i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint , GLint , GLint )>(context->getProcAddress("glProgramUniform4i"));
1626 d->ProgramUniform3uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLuint *)>(context->getProcAddress("glProgramUniform3uiv"));
1627 d->ProgramUniform3ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint , GLuint , GLuint )>(context->getProcAddress("glProgramUniform3ui"));
1628 d->ProgramUniform3dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glProgramUniform3dv"));
1629 d->ProgramUniform3d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble , GLdouble , GLdouble )>(context->getProcAddress("glProgramUniform3d"));
1630 d->ProgramUniform3fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glProgramUniform3fv"));
1631 d->ProgramUniform3f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glProgramUniform3f"));
1632 d->ProgramUniform3iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLint *)>(context->getProcAddress("glProgramUniform3iv"));
1633 d->ProgramUniform3i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint , GLint )>(context->getProcAddress("glProgramUniform3i"));
1634 d->ProgramUniform2uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLuint *)>(context->getProcAddress("glProgramUniform2uiv"));
1635 d->ProgramUniform2ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint , GLuint )>(context->getProcAddress("glProgramUniform2ui"));
1636 d->ProgramUniform2dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glProgramUniform2dv"));
1637 d->ProgramUniform2d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble , GLdouble )>(context->getProcAddress("glProgramUniform2d"));
1638 d->ProgramUniform2fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glProgramUniform2fv"));
1639 d->ProgramUniform2f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat , GLfloat )>(context->getProcAddress("glProgramUniform2f"));
1640 d->ProgramUniform2iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLint *)>(context->getProcAddress("glProgramUniform2iv"));
1641 d->ProgramUniform2i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint , GLint )>(context->getProcAddress("glProgramUniform2i"));
1642 d->ProgramUniform1uiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLuint *)>(context->getProcAddress("glProgramUniform1uiv"));
1643 d->ProgramUniform1ui = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLuint )>(context->getProcAddress("glProgramUniform1ui"));
1644 d->ProgramUniform1dv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLdouble *)>(context->getProcAddress("glProgramUniform1dv"));
1645 d->ProgramUniform1d = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLdouble )>(context->getProcAddress("glProgramUniform1d"));
1646 d->ProgramUniform1fv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glProgramUniform1fv"));
1647 d->ProgramUniform1f = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLfloat )>(context->getProcAddress("glProgramUniform1f"));
1648 d->ProgramUniform1iv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLsizei , const GLint *)>(context->getProcAddress("glProgramUniform1iv"));
1649 d->ProgramUniform1i = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLint , GLint )>(context->getProcAddress("glProgramUniform1i"));
1650 d->GetProgramPipelineiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLint *)>(context->getProcAddress("glGetProgramPipelineiv"));
1651 d->IsProgramPipeline = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glIsProgramPipeline"));
1652 d->GenProgramPipelines = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , GLuint *)>(context->getProcAddress("glGenProgramPipelines"));
1653 d->DeleteProgramPipelines = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsizei , const GLuint *)>(context->getProcAddress("glDeleteProgramPipelines"));
1654 d->BindProgramPipeline = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint )>(context->getProcAddress("glBindProgramPipeline"));
1655 d->CreateShaderProgramv = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLchar* const *)>(context->getProcAddress("glCreateShaderProgramv"));
1656 d->ActiveShaderProgram = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint )>(context->getProcAddress("glActiveShaderProgram"));
1657 d->UseProgramStages = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLbitfield , GLuint )>(context->getProcAddress("glUseProgramStages"));
1658 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1659 return true;
1660}
1661
1662QOpenGLExtension_ARB_shader_atomic_counters::QOpenGLExtension_ARB_shader_atomic_counters()
1663 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_shader_atomic_countersPrivate))
1664{
1665}
1666
1667bool QOpenGLExtension_ARB_shader_atomic_counters::initializeOpenGLFunctions()
1668{
1669 if (isInitialized())
1670 return true;
1671
1672 QOpenGLContext *context = QOpenGLContext::currentContext();
1673 if (!context) {
1674 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1675 return false;
1676 }
1677
1678 // Resolve the functions
1679 Q_D(QOpenGLExtension_ARB_shader_atomic_counters);
1680
1681 d->GetActiveAtomicCounterBufferiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLenum , GLint *)>(context->getProcAddress("glGetActiveAtomicCounterBufferiv"));
1682 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1683 return true;
1684}
1685
1686QOpenGLExtension_ARB_shader_image_load_store::QOpenGLExtension_ARB_shader_image_load_store()
1687 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_shader_image_load_storePrivate))
1688{
1689}
1690
1691bool QOpenGLExtension_ARB_shader_image_load_store::initializeOpenGLFunctions()
1692{
1693 if (isInitialized())
1694 return true;
1695
1696 QOpenGLContext *context = QOpenGLContext::currentContext();
1697 if (!context) {
1698 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1699 return false;
1700 }
1701
1702 // Resolve the functions
1703 Q_D(QOpenGLExtension_ARB_shader_image_load_store);
1704
1705 d->MemoryBarrier = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLbitfield )>(context->getProcAddress("glMemoryBarrier"));
1706 d->BindImageTexture = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLint , GLboolean , GLint , GLenum , GLenum )>(context->getProcAddress("glBindImageTexture"));
1707 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1708 return true;
1709}
1710
1711QOpenGLExtension_ARB_shader_objects::QOpenGLExtension_ARB_shader_objects()
1712 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_shader_objectsPrivate))
1713{
1714}
1715
1716bool QOpenGLExtension_ARB_shader_objects::initializeOpenGLFunctions()
1717{
1718 if (isInitialized())
1719 return true;
1720
1721 QOpenGLContext *context = QOpenGLContext::currentContext();
1722 if (!context) {
1723 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1724 return false;
1725 }
1726
1727 // Resolve the functions
1728 Q_D(QOpenGLExtension_ARB_shader_objects);
1729
1730 d->GetShaderSourceARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLsizei , GLsizei *, GLcharARB *)>(context->getProcAddress("glGetShaderSourceARB"));
1731 d->GetUniformivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLint , GLint *)>(context->getProcAddress("glGetUniformivARB"));
1732 d->GetUniformfvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLint , GLfloat *)>(context->getProcAddress("glGetUniformfvARB"));
1733 d->GetActiveUniformARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLuint , GLsizei , GLsizei *, GLint *, GLenum *, GLcharARB *)>(context->getProcAddress("glGetActiveUniformARB"));
1734 d->GetUniformLocationARB = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLhandleARB , const GLcharARB *)>(context->getProcAddress("glGetUniformLocationARB"));
1735 d->GetAttachedObjectsARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLsizei , GLsizei *, GLhandleARB *)>(context->getProcAddress("glGetAttachedObjectsARB"));
1736 d->GetInfoLogARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLsizei , GLsizei *, GLcharARB *)>(context->getProcAddress("glGetInfoLogARB"));
1737 d->GetObjectParameterivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLenum , GLint *)>(context->getProcAddress("glGetObjectParameterivARB"));
1738 d->GetObjectParameterfvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLenum , GLfloat *)>(context->getProcAddress("glGetObjectParameterfvARB"));
1739 d->UniformMatrix4fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix4fvARB"));
1740 d->UniformMatrix3fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix3fvARB"));
1741 d->UniformMatrix2fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , GLboolean , const GLfloat *)>(context->getProcAddress("glUniformMatrix2fvARB"));
1742 d->Uniform4ivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLint *)>(context->getProcAddress("glUniform4ivARB"));
1743 d->Uniform3ivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLint *)>(context->getProcAddress("glUniform3ivARB"));
1744 d->Uniform2ivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLint *)>(context->getProcAddress("glUniform2ivARB"));
1745 d->Uniform1ivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLint *)>(context->getProcAddress("glUniform1ivARB"));
1746 d->Uniform4fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glUniform4fvARB"));
1747 d->Uniform3fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glUniform3fvARB"));
1748 d->Uniform2fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glUniform2fvARB"));
1749 d->Uniform1fvARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLsizei , const GLfloat *)>(context->getProcAddress("glUniform1fvARB"));
1750 d->Uniform4iARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint , GLint )>(context->getProcAddress("glUniform4iARB"));
1751 d->Uniform3iARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint , GLint )>(context->getProcAddress("glUniform3iARB"));
1752 d->Uniform2iARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint , GLint )>(context->getProcAddress("glUniform2iARB"));
1753 d->Uniform1iARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLint )>(context->getProcAddress("glUniform1iARB"));
1754 d->Uniform4fARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glUniform4fARB"));
1755 d->Uniform3fARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat , GLfloat )>(context->getProcAddress("glUniform3fARB"));
1756 d->Uniform2fARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat , GLfloat )>(context->getProcAddress("glUniform2fARB"));
1757 d->Uniform1fARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , GLfloat )>(context->getProcAddress("glUniform1fARB"));
1758 d->ValidateProgramARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB )>(context->getProcAddress("glValidateProgramARB"));
1759 d->UseProgramObjectARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB )>(context->getProcAddress("glUseProgramObjectARB"));
1760 d->LinkProgramARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB )>(context->getProcAddress("glLinkProgramARB"));
1761 d->AttachObjectARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLhandleARB )>(context->getProcAddress("glAttachObjectARB"));
1762 d->CreateProgramObjectARB = reinterpret_cast<GLhandleARB (QOPENGLF_APIENTRYP)()>(context->getProcAddress("glCreateProgramObjectARB"));
1763 d->CompileShaderARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB )>(context->getProcAddress("glCompileShaderARB"));
1764 d->ShaderSourceARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLsizei , const GLcharARB* *, const GLint *)>(context->getProcAddress("glShaderSourceARB"));
1765 d->CreateShaderObjectARB = reinterpret_cast<GLhandleARB (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glCreateShaderObjectARB"));
1766 d->DetachObjectARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB , GLhandleARB )>(context->getProcAddress("glDetachObjectARB"));
1767 d->GetHandleARB = reinterpret_cast<GLhandleARB (QOPENGLF_APIENTRYP)(GLenum )>(context->getProcAddress("glGetHandleARB"));
1768 d->DeleteObjectARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLhandleARB )>(context->getProcAddress("glDeleteObjectARB"));
1769 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1770 return true;
1771}
1772
1773QOpenGLExtension_ARB_shader_storage_buffer_object::QOpenGLExtension_ARB_shader_storage_buffer_object()
1774 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_shader_storage_buffer_objectPrivate))
1775{
1776}
1777
1778bool QOpenGLExtension_ARB_shader_storage_buffer_object::initializeOpenGLFunctions()
1779{
1780 if (isInitialized())
1781 return true;
1782
1783 QOpenGLContext *context = QOpenGLContext::currentContext();
1784 if (!context) {
1785 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1786 return false;
1787 }
1788
1789 // Resolve the functions
1790 Q_D(QOpenGLExtension_ARB_shader_storage_buffer_object);
1791
1792 d->ShaderStorageBlockBinding = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLuint , GLuint )>(context->getProcAddress("glShaderStorageBlockBinding"));
1793 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1794 return true;
1795}
1796
1797QOpenGLExtension_ARB_shader_subroutine::QOpenGLExtension_ARB_shader_subroutine()
1798 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_shader_subroutinePrivate))
1799{
1800}
1801
1802bool QOpenGLExtension_ARB_shader_subroutine::initializeOpenGLFunctions()
1803{
1804 if (isInitialized())
1805 return true;
1806
1807 QOpenGLContext *context = QOpenGLContext::currentContext();
1808 if (!context) {
1809 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1810 return false;
1811 }
1812
1813 // Resolve the functions
1814 Q_D(QOpenGLExtension_ARB_shader_subroutine);
1815
1816 d->GetProgramStageiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLenum , GLint *)>(context->getProcAddress("glGetProgramStageiv"));
1817 d->GetUniformSubroutineuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , GLuint *)>(context->getProcAddress("glGetUniformSubroutineuiv"));
1818 d->UniformSubroutinesuiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLsizei , const GLuint *)>(context->getProcAddress("glUniformSubroutinesuiv"));
1819 d->GetActiveSubroutineName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetActiveSubroutineName"));
1820 d->GetActiveSubroutineUniformName = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLsizei , GLsizei *, GLchar *)>(context->getProcAddress("glGetActiveSubroutineUniformName"));
1821 d->GetActiveSubroutineUniformiv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLenum , GLuint , GLenum , GLint *)>(context->getProcAddress("glGetActiveSubroutineUniformiv"));
1822 d->GetSubroutineIndex = reinterpret_cast<GLuint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetSubroutineIndex"));
1823 d->GetSubroutineUniformLocation = reinterpret_cast<GLint (QOPENGLF_APIENTRYP)(GLuint , GLenum , const GLchar *)>(context->getProcAddress("glGetSubroutineUniformLocation"));
1824 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1825 return true;
1826}
1827
1828QOpenGLExtension_ARB_shading_language_include::QOpenGLExtension_ARB_shading_language_include()
1829 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_shading_language_includePrivate))
1830{
1831}
1832
1833bool QOpenGLExtension_ARB_shading_language_include::initializeOpenGLFunctions()
1834{
1835 if (isInitialized())
1836 return true;
1837
1838 QOpenGLContext *context = QOpenGLContext::currentContext();
1839 if (!context) {
1840 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1841 return false;
1842 }
1843
1844 // Resolve the functions
1845 Q_D(QOpenGLExtension_ARB_shading_language_include);
1846
1847 d->GetNamedStringivARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , const GLchar *, GLenum , GLint *)>(context->getProcAddress("glGetNamedStringivARB"));
1848 d->GetNamedStringARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , const GLchar *, GLsizei , GLint *, GLchar *)>(context->getProcAddress("glGetNamedStringARB"));
1849 d->IsNamedStringARB = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLint , const GLchar *)>(context->getProcAddress("glIsNamedStringARB"));
1850 d->CompileShaderIncludeARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLuint , GLsizei , const GLchar* *, const GLint *)>(context->getProcAddress("glCompileShaderIncludeARB"));
1851 d->DeleteNamedStringARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLint , const GLchar *)>(context->getProcAddress("glDeleteNamedStringARB"));
1852 d->NamedStringARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint , const GLchar *, GLint , const GLchar *)>(context->getProcAddress("glNamedStringARB"));
1853 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1854 return true;
1855}
1856
1857QOpenGLExtension_ARB_sync::QOpenGLExtension_ARB_sync()
1858 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_syncPrivate))
1859{
1860}
1861
1862bool QOpenGLExtension_ARB_sync::initializeOpenGLFunctions()
1863{
1864 if (isInitialized())
1865 return true;
1866
1867 QOpenGLContext *context = QOpenGLContext::currentContext();
1868 if (!context) {
1869 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1870 return false;
1871 }
1872
1873 // Resolve the functions
1874 Q_D(QOpenGLExtension_ARB_sync);
1875
1876 d->GetSynciv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsync , GLenum , GLsizei , GLsizei *, GLint *)>(context->getProcAddress("glGetSynciv"));
1877 d->GetInteger64v = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint64 *)>(context->getProcAddress("glGetInteger64v"));
1878 d->WaitSync = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsync , GLbitfield , GLuint64 )>(context->getProcAddress("glWaitSync"));
1879 d->ClientWaitSync = reinterpret_cast<GLenum (QOPENGLF_APIENTRYP)(GLsync , GLbitfield , GLuint64 )>(context->getProcAddress("glClientWaitSync"));
1880 d->DeleteSync = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLsync )>(context->getProcAddress("glDeleteSync"));
1881 d->IsSync = reinterpret_cast<GLboolean (QOPENGLF_APIENTRYP)(GLsync )>(context->getProcAddress("glIsSync"));
1882 d->FenceSync = reinterpret_cast<GLsync (QOPENGLF_APIENTRYP)(GLenum , GLbitfield )>(context->getProcAddress("glFenceSync"));
1883 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1884 return true;
1885}
1886
1887QOpenGLExtension_ARB_tessellation_shader::QOpenGLExtension_ARB_tessellation_shader()
1888 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_tessellation_shaderPrivate))
1889{
1890}
1891
1892bool QOpenGLExtension_ARB_tessellation_shader::initializeOpenGLFunctions()
1893{
1894 if (isInitialized())
1895 return true;
1896
1897 QOpenGLContext *context = QOpenGLContext::currentContext();
1898 if (!context) {
1899 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1900 return false;
1901 }
1902
1903 // Resolve the functions
1904 Q_D(QOpenGLExtension_ARB_tessellation_shader);
1905
1906 d->PatchParameterfv = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , const GLfloat *)>(context->getProcAddress("glPatchParameterfv"));
1907 d->PatchParameteri = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLint )>(context->getProcAddress("glPatchParameteri"));
1908 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1909 return true;
1910}
1911
1912QOpenGLExtension_ARB_texture_buffer_object::QOpenGLExtension_ARB_texture_buffer_object()
1913 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_texture_buffer_objectPrivate))
1914{
1915}
1916
1917bool QOpenGLExtension_ARB_texture_buffer_object::initializeOpenGLFunctions()
1918{
1919 if (isInitialized())
1920 return true;
1921
1922 QOpenGLContext *context = QOpenGLContext::currentContext();
1923 if (!context) {
1924 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1925 return false;
1926 }
1927
1928 // Resolve the functions
1929 Q_D(QOpenGLExtension_ARB_texture_buffer_object);
1930
1931 d->TexBufferARB = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint )>(context->getProcAddress("glTexBufferARB"));
1932 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1933 return true;
1934}
1935
1936QOpenGLExtension_ARB_texture_buffer_range::QOpenGLExtension_ARB_texture_buffer_range()
1937 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_texture_buffer_rangePrivate))
1938{
1939}
1940
1941bool QOpenGLExtension_ARB_texture_buffer_range::initializeOpenGLFunctions()
1942{
1943 if (isInitialized())
1944 return true;
1945
1946 QOpenGLContext *context = QOpenGLContext::currentContext();
1947 if (!context) {
1948 qWarning("A current OpenGL context is required to resolve OpenGL extension functions");
1949 return false;
1950 }
1951
1952 // Resolve the functions
1953 Q_D(QOpenGLExtension_ARB_texture_buffer_range);
1954
1955 d->TexBufferRange = reinterpret_cast<void (QOPENGLF_APIENTRYP)(GLenum , GLenum , GLuint , GLintptr , GLsizeiptr )>(context->getProcAddress("glTexBufferRange"));
1956 QAbstractOpenGLExtension::initializeOpenGLFunctions();
1957 return true;
1958}
1959
1960QOpenGLExtension_ARB_texture_compression::QOpenGLExtension_ARB_texture_compression()
1961 : QAbstractOpenGLExtension(*(new QOpenGLExtension_ARB_texture_compressionPrivate))
1962{
1963}
1964
1965bool QOpenGLExtension_ARB_texture_compression::initializeOpenGLFunctions()
1966{
1967 if (isInitialized())
1968 return true;
1969
1970