Line | Source Code | Coverage |
---|
1 | /**************************************************************************** | - |
2 | ** | - |
3 | ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). | - |
4 | ** Contact: http://www.qt-project.org/legal | - |
5 | ** | - |
6 | ** This file is part of the QtGui module of the Qt Toolkit. | - |
7 | ** | - |
8 | ** $QT_BEGIN_LICENSE:LGPL$ | - |
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 Digia. For licensing terms and | - |
14 | ** conditions see http://qt.digia.com/licensing. For further information | - |
15 | ** use the contact form at http://qt.digia.com/contact-us. | - |
16 | ** | - |
17 | ** GNU Lesser General Public License Usage | - |
18 | ** Alternatively, this file may be used under the terms of the GNU Lesser | - |
19 | ** General Public License version 2.1 as published by the Free Software | - |
20 | ** Foundation and appearing in the file LICENSE.LGPL included in the | - |
21 | ** packaging of this file. Please review the following information to | - |
22 | ** ensure the GNU Lesser General Public License version 2.1 requirements | - |
23 | ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. | - |
24 | ** | - |
25 | ** In addition, as a special exception, Digia gives you certain additional | - |
26 | ** rights. These rights are described in the Digia Qt LGPL Exception | - |
27 | ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. | - |
28 | ** | - |
29 | ** GNU General Public License Usage | - |
30 | ** Alternatively, this file may be used under the terms of the GNU | - |
31 | ** General Public License version 3.0 as published by the Free Software | - |
32 | ** Foundation and appearing in the file LICENSE.GPL included in the | - |
33 | ** packaging of this file. Please review the following information to | - |
34 | ** ensure the GNU General Public License version 3.0 requirements will be | - |
35 | ** met: http://www.gnu.org/copyleft/gpl.html. | - |
36 | ** | - |
37 | ** | - |
38 | ** $QT_END_LICENSE$ | - |
39 | ** | - |
40 | ****************************************************************************/ | - |
41 | | - |
42 | #include "qopenglfunctions.h" | - |
43 | #include "qopenglextensions_p.h" | - |
44 | #include "qdebug.h" | - |
45 | #include "QtGui/private/qopenglcontext_p.h" | - |
46 | #include "QtGui/private/qopengl_p.h" | - |
47 | | - |
48 | QT_BEGIN_NAMESPACE | - |
49 | | - |
50 | /*! | - |
51 | \class QOpenGLFunctions | - |
52 | \brief The QOpenGLFunctions class provides cross-platform access to the OpenGL/ES 2.0 API. | - |
53 | \since 5.0 | - |
54 | \ingroup painting-3D | - |
55 | \inmodule QtGui | - |
56 | | - |
57 | OpenGL/ES 2.0 defines a subset of the OpenGL specification that is | - |
58 | common across many desktop and embedded OpenGL implementations. | - |
59 | However, it can be difficult to use the functions from that subset | - |
60 | because they need to be resolved manually on desktop systems. | - |
61 | | - |
62 | QOpenGLFunctions provides a guaranteed API that is available on all | - |
63 | OpenGL systems and takes care of function resolution on systems | - |
64 | that need it. The recommended way to use QOpenGLFunctions is by | - |
65 | direct inheritance: | - |
66 | | - |
67 | \code | - |
68 | class MyGLWindow : public QWindow, protected QOpenGLFunctions | - |
69 | { | - |
70 | Q_OBJECT | - |
71 | public: | - |
72 | MyGLWindow(QScreen *screen = 0); | - |
73 | | - |
74 | protected: | - |
75 | void initializeGL(); | - |
76 | void paintGL(); | - |
77 | | - |
78 | QOpenGLContext *m_context; | - |
79 | }; | - |
80 | | - |
81 | MyGLWindow(QScreen *screen) | - |
82 | : QWindow(screen), QOpenGLWidget(parent) | - |
83 | { | - |
84 | setSurfaceType(OpenGLSurface); | - |
85 | create(); | - |
86 | | - |
87 | // Create an OpenGL context | - |
88 | m_context = new QOpenGLContext; | - |
89 | m_context->create(); | - |
90 | | - |
91 | // Setup scene and render it | - |
92 | initializeGL(); | - |
93 | paintGL() | - |
94 | } | - |
95 | | - |
96 | void MyGLWindow::initializeGL() | - |
97 | { | - |
98 | m_context->makeCurrent(this); | - |
99 | initializeOpenGLFunctions(); | - |
100 | } | - |
101 | \endcode | - |
102 | | - |
103 | The \c{paintGL()} function can then use any of the OpenGL/ES 2.0 | - |
104 | functions without explicit resolution, such as glActiveTexture() | - |
105 | in the following example: | - |
106 | | - |
107 | \code | - |
108 | void MyGLWindow::paintGL() | - |
109 | { | - |
110 | m_context->makeCurrent(this); | - |
111 | glActiveTexture(GL_TEXTURE1); | - |
112 | glBindTexture(GL_TEXTURE_2D, textureId); | - |
113 | ... | - |
114 | m_context->swapBuffers(this); | - |
115 | m_context->doneCurrent(); | - |
116 | } | - |
117 | \endcode | - |
118 | | - |
119 | QOpenGLFunctions can also be used directly for ad-hoc invocation | - |
120 | of OpenGL/ES 2.0 functions on all platforms: | - |
121 | | - |
122 | \code | - |
123 | QOpenGLFunctions glFuncs(QOpenGLContext::currentContext()); | - |
124 | glFuncs.glActiveTexture(GL_TEXTURE1); | - |
125 | \endcode | - |
126 | | - |
127 | QOpenGLFunctions provides wrappers for all OpenGL/ES 2.0 functions, | - |
128 | except those like \c{glDrawArrays()}, \c{glViewport()}, and | - |
129 | \c{glBindTexture()} that don't have portability issues. | - |
130 | | - |
131 | The hasOpenGLFeature() and openGLFeatures() functions can be used | - |
132 | to determine if the OpenGL implementation has a major OpenGL/ES 2.0 | - |
133 | feature. For example, the following checks if non power of two | - |
134 | textures are available: | - |
135 | | - |
136 | \code | - |
137 | QOpenGLFunctions funcs(QOpenGLContext::currentContext()); | - |
138 | bool npot = funcs.hasOpenGLFeature(QOpenGLFunctions::NPOTTextures); | - |
139 | \endcode | - |
140 | */ | - |
141 | | - |
142 | /*! | - |
143 | \enum QOpenGLFunctions::OpenGLFeature | - |
144 | This enum defines OpenGL/ES 2.0 features that may be optional | - |
145 | on other platforms. | - |
146 | | - |
147 | \value Multitexture glActiveTexture() function is available. | - |
148 | \value Shaders Shader functions are available. | - |
149 | \value Buffers Vertex and index buffer functions are available. | - |
150 | \value Framebuffers Framebuffer object functions are available. | - |
151 | \value BlendColor glBlendColor() is available. | - |
152 | \value BlendEquation glBlendEquation() is available. | - |
153 | \value BlendEquationSeparate glBlendEquationSeparate() is available. | - |
154 | \value BlendFuncSeparate glBlendFuncSeparate() is available. | - |
155 | \value BlendSubtract Blend subtract mode is available. | - |
156 | \value CompressedTextures Compressed texture functions are available. | - |
157 | \value Multisample glSampleCoverage() function is available. | - |
158 | \value StencilSeparate Separate stencil functions are available. | - |
159 | \value NPOTTextures Non power of two textures are available. | - |
160 | \value NPOTTextureRepeat Non power of two textures can use GL_REPEAT as wrap parameter. | - |
161 | */ | - |
162 | | - |
163 | // Hidden private fields for additional extension data. | - |
164 | struct QOpenGLFunctionsPrivateEx : public QOpenGLExtensionsPrivate, public QOpenGLSharedResource | - |
165 | { | - |
166 | QOpenGLFunctionsPrivateEx(QOpenGLContext *context) | - |
167 | : QOpenGLExtensionsPrivate(context) | - |
168 | , QOpenGLSharedResource(context->shareGroup()) | - |
169 | , m_features(-1) | - |
170 | , m_extensions(-1) | - |
171 | {} | 0 |
172 | | - |
173 | void invalidateResource() | - |
174 | { | - |
175 | m_features = -1; never executed (the execution status of this line is deduced): m_features = -1; | - |
176 | m_extensions = -1; never executed (the execution status of this line is deduced): m_extensions = -1; | - |
177 | } | 0 |
178 | | - |
179 | void freeResource(QOpenGLContext *) | - |
180 | { | - |
181 | // no gl resources to free | - |
182 | } | - |
183 | | - |
184 | int m_features; | - |
185 | int m_extensions; | - |
186 | }; | - |
187 | | - |
188 | Q_GLOBAL_STATIC(QOpenGLMultiGroupSharedResource, qt_gl_functions_resource) never executed: delete x; never executed: return thisGlobalStatic.pointer.load(); never evaluated: !thisGlobalStatic.pointer.testAndSetOrdered(0, x) never evaluated: !thisGlobalStatic.pointer.load() never evaluated: !thisGlobalStatic.destroyed | 0 |
189 | | - |
190 | static QOpenGLFunctionsPrivateEx *qt_gl_functions(QOpenGLContext *context = 0) | - |
191 | { | - |
192 | if (!context) never evaluated: !context | 0 |
193 | context = QOpenGLContext::currentContext(); never executed: context = QOpenGLContext::currentContext(); | 0 |
194 | Q_ASSERT(context); never executed (the execution status of this line is deduced): qt_noop(); | - |
195 | QOpenGLFunctionsPrivateEx *funcs = never executed (the execution status of this line is deduced): QOpenGLFunctionsPrivateEx *funcs = | - |
196 | qt_gl_functions_resource()->value<QOpenGLFunctionsPrivateEx>(context); never executed (the execution status of this line is deduced): qt_gl_functions_resource()->value<QOpenGLFunctionsPrivateEx>(context); | - |
197 | return funcs; never executed: return funcs; | 0 |
198 | } | - |
199 | | - |
200 | /*! | - |
201 | Constructs a default function resolver. The resolver cannot | - |
202 | be used until initializeOpenGLFunctions() is called to specify | - |
203 | the context. | - |
204 | | - |
205 | \sa initializeOpenGLFunctions() | - |
206 | */ | - |
207 | QOpenGLFunctions::QOpenGLFunctions() | - |
208 | : d_ptr(0) | - |
209 | { | - |
210 | } | 0 |
211 | | - |
212 | /*! | - |
213 | Constructs a function resolver for \a context. If \a context | - |
214 | is null, then the resolver will be created for the current QOpenGLContext. | - |
215 | | - |
216 | The context or another context in the group must be current. | - |
217 | | - |
218 | An object constructed in this way can only be used with \a context | - |
219 | and other contexts that share with it. Use initializeOpenGLFunctions() | - |
220 | to change the object's context association. | - |
221 | | - |
222 | \sa initializeOpenGLFunctions() | - |
223 | */ | - |
224 | QOpenGLFunctions::QOpenGLFunctions(QOpenGLContext *context) | - |
225 | : d_ptr(0) | - |
226 | { | - |
227 | if (context && QOpenGLContextGroup::currentContextGroup() == context->shareGroup()) never evaluated: context never evaluated: QOpenGLContextGroup::currentContextGroup() == context->shareGroup() | 0 |
228 | d_ptr = qt_gl_functions(context); never executed: d_ptr = qt_gl_functions(context); | 0 |
229 | else | - |
230 | qWarning() << "QOpenGLFunctions created with non-current context"; never executed: QMessageLogger("opengl/qopenglfunctions.cpp", 230, __PRETTY_FUNCTION__).warning() << "QOpenGLFunctions created with non-current context"; | 0 |
231 | } | - |
232 | | - |
233 | QOpenGLExtensions::QOpenGLExtensions() | - |
234 | : QOpenGLFunctions() | - |
235 | { | - |
236 | } | 0 |
237 | | - |
238 | QOpenGLExtensions::QOpenGLExtensions(QOpenGLContext *context) | - |
239 | : QOpenGLFunctions(context) | - |
240 | { | - |
241 | } | 0 |
242 | | - |
243 | /*! | - |
244 | \fn QOpenGLFunctions::~QOpenGLFunctions() | - |
245 | | - |
246 | Destroys this function resolver. | - |
247 | */ | - |
248 | | - |
249 | static int qt_gl_resolve_features() | - |
250 | { | - |
251 | #if defined(QT_OPENGL_ES_2) | - |
252 | int features = QOpenGLFunctions::Multitexture | | - |
253 | QOpenGLFunctions::Shaders | | - |
254 | QOpenGLFunctions::Buffers | | - |
255 | QOpenGLFunctions::Framebuffers | | - |
256 | QOpenGLFunctions::BlendColor | | - |
257 | QOpenGLFunctions::BlendEquation | | - |
258 | QOpenGLFunctions::BlendEquationSeparate | | - |
259 | QOpenGLFunctions::BlendFuncSeparate | | - |
260 | QOpenGLFunctions::BlendSubtract | | - |
261 | QOpenGLFunctions::CompressedTextures | | - |
262 | QOpenGLFunctions::Multisample | | - |
263 | QOpenGLFunctions::StencilSeparate; | - |
264 | QOpenGLExtensionMatcher extensions; | - |
265 | if (extensions.match("GL_IMG_texture_npot")) | - |
266 | features |= QOpenGLFunctions::NPOTTextures; | - |
267 | if (extensions.match("GL_OES_texture_npot")) | - |
268 | features |= QOpenGLFunctions::NPOTTextures | | - |
269 | QOpenGLFunctions::NPOTTextureRepeat; | - |
270 | return features; | - |
271 | #elif defined(QT_OPENGL_ES) | - |
272 | int features = QOpenGLFunctions::Multitexture | | - |
273 | QOpenGLFunctions::Buffers | | - |
274 | QOpenGLFunctions::CompressedTextures | | - |
275 | QOpenGLFunctions::Multisample; | - |
276 | QOpenGLExtensionMatcher extensions; | - |
277 | if (extensions.match("GL_OES_framebuffer_object")) | - |
278 | features |= QOpenGLFunctions::Framebuffers; | - |
279 | if (extensions.match("GL_OES_blend_equation_separate")) | - |
280 | features |= QOpenGLFunctions::BlendEquationSeparate; | - |
281 | if (extensions.match("GL_OES_blend_func_separate")) | - |
282 | features |= QOpenGLFunctions::BlendFuncSeparate; | - |
283 | if (extensions.match("GL_OES_blend_subtract")) | - |
284 | features |= QOpenGLFunctions::BlendSubtract; | - |
285 | if (extensions.match("GL_OES_texture_npot")) | - |
286 | features |= QOpenGLFunctions::NPOTTextures; | - |
287 | if (extensions.match("GL_IMG_texture_npot")) | - |
288 | features |= QOpenGLFunctions::NPOTTextures; | - |
289 | return features; | - |
290 | #else | - |
291 | int features = 0; never executed (the execution status of this line is deduced): int features = 0; | - |
292 | //QOpenGLFormat::OpenGLVersionFlags versions = QOpenGLFormat::openGLVersionFlags(); | - |
293 | QOpenGLExtensionMatcher extensions; never executed (the execution status of this line is deduced): QOpenGLExtensionMatcher extensions; | - |
294 | | - |
295 | // Recognize features by extension name. | - |
296 | if (extensions.match("GL_ARB_multitexture")) never evaluated: extensions.match("GL_ARB_multitexture") | 0 |
297 | features |= QOpenGLFunctions::Multitexture; never executed: features |= QOpenGLFunctions::Multitexture; | 0 |
298 | if (extensions.match("GL_ARB_shader_objects")) never evaluated: extensions.match("GL_ARB_shader_objects") | 0 |
299 | features |= QOpenGLFunctions::Shaders; never executed: features |= QOpenGLFunctions::Shaders; | 0 |
300 | if (extensions.match("GL_EXT_framebuffer_object") || never evaluated: extensions.match("GL_EXT_framebuffer_object") | 0 |
301 | extensions.match("GL_ARB_framebuffer_object")) never evaluated: extensions.match("GL_ARB_framebuffer_object") | 0 |
302 | features |= QOpenGLFunctions::Framebuffers; never executed: features |= QOpenGLFunctions::Framebuffers; | 0 |
303 | if (extensions.match("GL_EXT_blend_color")) never evaluated: extensions.match("GL_EXT_blend_color") | 0 |
304 | features |= QOpenGLFunctions::BlendColor; never executed: features |= QOpenGLFunctions::BlendColor; | 0 |
305 | if (extensions.match("GL_EXT_blend_equation_separate")) never evaluated: extensions.match("GL_EXT_blend_equation_separate") | 0 |
306 | features |= QOpenGLFunctions::BlendEquationSeparate; never executed: features |= QOpenGLFunctions::BlendEquationSeparate; | 0 |
307 | if (extensions.match("GL_EXT_blend_func_separate")) never evaluated: extensions.match("GL_EXT_blend_func_separate") | 0 |
308 | features |= QOpenGLFunctions::BlendFuncSeparate; never executed: features |= QOpenGLFunctions::BlendFuncSeparate; | 0 |
309 | if (extensions.match("GL_EXT_blend_subtract")) never evaluated: extensions.match("GL_EXT_blend_subtract") | 0 |
310 | features |= QOpenGLFunctions::BlendSubtract; never executed: features |= QOpenGLFunctions::BlendSubtract; | 0 |
311 | if (extensions.match("GL_ARB_texture_compression")) never evaluated: extensions.match("GL_ARB_texture_compression") | 0 |
312 | features |= QOpenGLFunctions::CompressedTextures; never executed: features |= QOpenGLFunctions::CompressedTextures; | 0 |
313 | if (extensions.match("GL_ARB_multisample")) never evaluated: extensions.match("GL_ARB_multisample") | 0 |
314 | features |= QOpenGLFunctions::Multisample; never executed: features |= QOpenGLFunctions::Multisample; | 0 |
315 | if (extensions.match("GL_ARB_texture_non_power_of_two")) never evaluated: extensions.match("GL_ARB_texture_non_power_of_two") | 0 |
316 | features |= QOpenGLFunctions::NPOTTextures; never executed: features |= QOpenGLFunctions::NPOTTextures; | 0 |
317 | | - |
318 | // assume version 2.0 or higher | - |
319 | features |= QOpenGLFunctions::BlendColor | never executed (the execution status of this line is deduced): features |= QOpenGLFunctions::BlendColor | | - |
320 | QOpenGLFunctions::BlendEquation | never executed (the execution status of this line is deduced): QOpenGLFunctions::BlendEquation | | - |
321 | QOpenGLFunctions::Multitexture | never executed (the execution status of this line is deduced): QOpenGLFunctions::Multitexture | | - |
322 | QOpenGLFunctions::CompressedTextures | never executed (the execution status of this line is deduced): QOpenGLFunctions::CompressedTextures | | - |
323 | QOpenGLFunctions::Multisample | never executed (the execution status of this line is deduced): QOpenGLFunctions::Multisample | | - |
324 | QOpenGLFunctions::BlendFuncSeparate | never executed (the execution status of this line is deduced): QOpenGLFunctions::BlendFuncSeparate | | - |
325 | QOpenGLFunctions::Buffers | never executed (the execution status of this line is deduced): QOpenGLFunctions::Buffers | | - |
326 | QOpenGLFunctions::Shaders | never executed (the execution status of this line is deduced): QOpenGLFunctions::Shaders | | - |
327 | QOpenGLFunctions::StencilSeparate | never executed (the execution status of this line is deduced): QOpenGLFunctions::StencilSeparate | | - |
328 | QOpenGLFunctions::BlendEquationSeparate | never executed (the execution status of this line is deduced): QOpenGLFunctions::BlendEquationSeparate | | - |
329 | QOpenGLFunctions::NPOTTextures; never executed (the execution status of this line is deduced): QOpenGLFunctions::NPOTTextures; | - |
330 | return features; never executed: return features; | 0 |
331 | #endif | - |
332 | } | - |
333 | | - |
334 | static int qt_gl_resolve_extensions() | - |
335 | { | - |
336 | int extensions = 0; never executed (the execution status of this line is deduced): int extensions = 0; | - |
337 | QOpenGLExtensionMatcher extensionMatcher; never executed (the execution status of this line is deduced): QOpenGLExtensionMatcher extensionMatcher; | - |
338 | #if defined(QT_OPENGL_ES) | - |
339 | if (extensionMatcher.match("GL_OES_mapbuffer")) | - |
340 | extensions |= QOpenGLExtensions::MapBuffer; | - |
341 | if (extensionMatcher.match("GL_OES_packed_depth_stencil")) | - |
342 | extensions |= QOpenGLExtensions::PackedDepthStencil; | - |
343 | if (extensionMatcher.match("GL_OES_element_index_uint")) | - |
344 | extensions |= QOpenGLExtensions::ElementIndexUint; | - |
345 | if (extensionMatcher.match("GL_OES_depth24")) | - |
346 | extensions |= QOpenGLExtensions::Depth24; | - |
347 | | - |
348 | if (extensionMatcher.match("GL_EXT_bgra")) | - |
349 | extensions |= QOpenGLExtensions::BGRATextureFormat; | - |
350 | | - |
351 | #else | - |
352 | extensions |= QOpenGLExtensions::ElementIndexUint | QOpenGLExtensions::MapBuffer; never executed (the execution status of this line is deduced): extensions |= QOpenGLExtensions::ElementIndexUint | QOpenGLExtensions::MapBuffer; | - |
353 | | - |
354 | // Recognize features by extension name. | - |
355 | if (extensionMatcher.match("GL_ARB_framebuffer_object")) { never evaluated: extensionMatcher.match("GL_ARB_framebuffer_object") | 0 |
356 | extensions |= QOpenGLExtensions::FramebufferMultisample | never executed (the execution status of this line is deduced): extensions |= QOpenGLExtensions::FramebufferMultisample | | - |
357 | QOpenGLExtensions::FramebufferBlit | never executed (the execution status of this line is deduced): QOpenGLExtensions::FramebufferBlit | | - |
358 | QOpenGLExtensions::PackedDepthStencil; never executed (the execution status of this line is deduced): QOpenGLExtensions::PackedDepthStencil; | - |
359 | } else { | 0 |
360 | if (extensionMatcher.match("GL_EXT_framebuffer_multisample")) never evaluated: extensionMatcher.match("GL_EXT_framebuffer_multisample") | 0 |
361 | extensions |= QOpenGLExtensions::FramebufferMultisample; never executed: extensions |= QOpenGLExtensions::FramebufferMultisample; | 0 |
362 | if (extensionMatcher.match("GL_EXT_framebuffer_blit")) never evaluated: extensionMatcher.match("GL_EXT_framebuffer_blit") | 0 |
363 | extensions |= QOpenGLExtensions::FramebufferBlit; never executed: extensions |= QOpenGLExtensions::FramebufferBlit; | 0 |
364 | if (extensionMatcher.match("GL_EXT_packed_depth_stencil")) never evaluated: extensionMatcher.match("GL_EXT_packed_depth_stencil") | 0 |
365 | extensions |= QOpenGLExtensions::PackedDepthStencil; never executed: extensions |= QOpenGLExtensions::PackedDepthStencil; | 0 |
366 | } | 0 |
367 | #endif | - |
368 | return extensions; never executed: return extensions; | 0 |
369 | } | - |
370 | | - |
371 | /*! | - |
372 | Returns the set of features that are present on this system's | - |
373 | OpenGL implementation. | - |
374 | | - |
375 | It is assumed that the QOpenGLContext associated with this function | - |
376 | resolver is current. | - |
377 | | - |
378 | \sa hasOpenGLFeature() | - |
379 | */ | - |
380 | QOpenGLFunctions::OpenGLFeatures QOpenGLFunctions::openGLFeatures() const | - |
381 | { | - |
382 | QOpenGLFunctionsPrivateEx *d = static_cast<QOpenGLFunctionsPrivateEx *>(d_ptr); never executed (the execution status of this line is deduced): QOpenGLFunctionsPrivateEx *d = static_cast<QOpenGLFunctionsPrivateEx *>(d_ptr); | - |
383 | if (!d) | 0 |
384 | return 0; never executed: return 0; | 0 |
385 | if (d->m_features == -1) never evaluated: d->m_features == -1 | 0 |
386 | d->m_features = qt_gl_resolve_features(); never executed: d->m_features = qt_gl_resolve_features(); | 0 |
387 | return QOpenGLFunctions::OpenGLFeatures(d->m_features); never executed: return QOpenGLFunctions::OpenGLFeatures(d->m_features); | 0 |
388 | } | - |
389 | | - |
390 | /*! | - |
391 | Returns true if \a feature is present on this system's OpenGL | - |
392 | implementation; false otherwise. | - |
393 | | - |
394 | It is assumed that the QOpenGLContext associated with this function | - |
395 | resolver is current. | - |
396 | | - |
397 | \sa openGLFeatures() | - |
398 | */ | - |
399 | bool QOpenGLFunctions::hasOpenGLFeature(QOpenGLFunctions::OpenGLFeature feature) const | - |
400 | { | - |
401 | QOpenGLFunctionsPrivateEx *d = static_cast<QOpenGLFunctionsPrivateEx *>(d_ptr); never executed (the execution status of this line is deduced): QOpenGLFunctionsPrivateEx *d = static_cast<QOpenGLFunctionsPrivateEx *>(d_ptr); | - |
402 | if (!d) | 0 |
403 | return false; never executed: return false; | 0 |
404 | if (d->m_features == -1) never evaluated: d->m_features == -1 | 0 |
405 | d->m_features = qt_gl_resolve_features(); never executed: d->m_features = qt_gl_resolve_features(); | 0 |
406 | return (d->m_features & int(feature)) != 0; never executed: return (d->m_features & int(feature)) != 0; | 0 |
407 | } | - |
408 | | - |
409 | /*! | - |
410 | Returns the set of extensions that are present on this system's | - |
411 | OpenGL implementation. | - |
412 | | - |
413 | It is assumed that the QOpenGLContext associated with this extension | - |
414 | resolver is current. | - |
415 | | - |
416 | \sa hasOpenGLExtensions() | - |
417 | */ | - |
418 | QOpenGLExtensions::OpenGLExtensions QOpenGLExtensions::openGLExtensions() | - |
419 | { | - |
420 | QOpenGLFunctionsPrivateEx *d = static_cast<QOpenGLFunctionsPrivateEx *>(d_ptr); never executed (the execution status of this line is deduced): QOpenGLFunctionsPrivateEx *d = static_cast<QOpenGLFunctionsPrivateEx *>(d_ptr); | - |
421 | if (!d) | 0 |
422 | return 0; never executed: return 0; | 0 |
423 | if (d->m_extensions == -1) never evaluated: d->m_extensions == -1 | 0 |
424 | d->m_extensions = qt_gl_resolve_extensions(); never executed: d->m_extensions = qt_gl_resolve_extensions(); | 0 |
425 | return QOpenGLExtensions::OpenGLExtensions(d->m_extensions); never executed: return QOpenGLExtensions::OpenGLExtensions(d->m_extensions); | 0 |
426 | } | - |
427 | | - |
428 | /*! | - |
429 | Returns true if \a extension is present on this system's OpenGL | - |
430 | implementation; false otherwise. | - |
431 | | - |
432 | It is assumed that the QOpenGLContext associated with this extension | - |
433 | resolver is current. | - |
434 | | - |
435 | \sa openGLFeatures() | - |
436 | */ | - |
437 | bool QOpenGLExtensions::hasOpenGLExtension(QOpenGLExtensions::OpenGLExtension extension) const | - |
438 | { | - |
439 | QOpenGLFunctionsPrivateEx *d = static_cast<QOpenGLFunctionsPrivateEx *>(d_ptr); never executed (the execution status of this line is deduced): QOpenGLFunctionsPrivateEx *d = static_cast<QOpenGLFunctionsPrivateEx *>(d_ptr); | - |
440 | if (!d) | 0 |
441 | return false; never executed: return false; | 0 |
442 | if (d->m_extensions == -1) never evaluated: d->m_extensions == -1 | 0 |
443 | d->m_extensions = qt_gl_resolve_extensions(); never executed: d->m_extensions = qt_gl_resolve_extensions(); | 0 |
444 | return (d->m_extensions & int(extension)) != 0; never executed: return (d->m_extensions & int(extension)) != 0; | 0 |
445 | } | - |
446 | | - |
447 | /*! | - |
448 | \fn void QOpenGLFunctions::initializeGLFunctions() | - |
449 | \obsolete | - |
450 | | - |
451 | Use initializeOpenGLFunctions() instead. | - |
452 | */ | - |
453 | | - |
454 | /*! | - |
455 | Initializes OpenGL function resolution for the current context. | - |
456 | | - |
457 | After calling this function, the QOpenGLFunctions object can only be | - |
458 | used with the current context and other contexts that share with it. | - |
459 | Call initializeOpenGLFunctions() again to change the object's context | - |
460 | association. | - |
461 | */ | - |
462 | void QOpenGLFunctions::initializeOpenGLFunctions() | - |
463 | { | - |
464 | d_ptr = qt_gl_functions(); never executed (the execution status of this line is deduced): d_ptr = qt_gl_functions(); | - |
465 | } | 0 |
466 | | - |
467 | /*! | - |
468 | \fn void QOpenGLFunctions::glActiveTexture(GLenum texture) | - |
469 | | - |
470 | Convenience function that calls glActiveTexture(\a texture). | - |
471 | | - |
472 | For more information, see the OpenGL/ES 2.0 documentation for | - |
473 | \l{http://www.khronos.org/opengles/sdk/docs/man/glActiveTexture.xml}{glActiveTexture()}. | - |
474 | */ | - |
475 | | - |
476 | /*! | - |
477 | \fn void QOpenGLFunctions::glAttachShader(GLuint program, GLuint shader) | - |
478 | | - |
479 | Convenience function that calls glAttachShader(\a program, \a shader). | - |
480 | | - |
481 | For more information, see the OpenGL/ES 2.0 documentation for | - |
482 | \l{http://www.khronos.org/opengles/sdk/docs/man/glAttachShader.xml}{glAttachShader()}. | - |
483 | | - |
484 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
485 | */ | - |
486 | | - |
487 | /*! | - |
488 | \fn void QOpenGLFunctions::glBindAttribLocation(GLuint program, GLuint index, const char* name) | - |
489 | | - |
490 | Convenience function that calls glBindAttribLocation(\a program, \a index, \a name). | - |
491 | | - |
492 | For more information, see the OpenGL/ES 2.0 documentation for | - |
493 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBindAttribLocation.xml}{glBindAttribLocation()}. | - |
494 | | - |
495 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
496 | */ | - |
497 | | - |
498 | /*! | - |
499 | \fn void QOpenGLFunctions::glBindBuffer(GLenum target, GLuint buffer) | - |
500 | | - |
501 | Convenience function that calls glBindBuffer(\a target, \a buffer). | - |
502 | | - |
503 | For more information, see the OpenGL/ES 2.0 documentation for | - |
504 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBindBuffer.xml}{glBindBuffer()}. | - |
505 | */ | - |
506 | | - |
507 | /*! | - |
508 | \fn void QOpenGLFunctions::glBindFramebuffer(GLenum target, GLuint framebuffer) | - |
509 | | - |
510 | Convenience function that calls glBindFramebuffer(\a target, \a framebuffer). | - |
511 | | - |
512 | Note that Qt will translate a \a framebuffer argument of 0 to the currently | - |
513 | bound QOpenGLContext's defaultFramebufferObject(). | - |
514 | | - |
515 | For more information, see the OpenGL/ES 2.0 documentation for | - |
516 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBindFramebuffer.xml}{glBindFramebuffer()}. | - |
517 | */ | - |
518 | | - |
519 | /*! | - |
520 | \fn void QOpenGLFunctions::glBindRenderbuffer(GLenum target, GLuint renderbuffer) | - |
521 | | - |
522 | Convenience function that calls glBindRenderbuffer(\a target, \a renderbuffer). | - |
523 | | - |
524 | For more information, see the OpenGL/ES 2.0 documentation for | - |
525 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBindRenderbuffer.xml}{glBindRenderbuffer()}. | - |
526 | */ | - |
527 | | - |
528 | /*! | - |
529 | \fn void QOpenGLFunctions::glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) | - |
530 | | - |
531 | Convenience function that calls glBlendColor(\a red, \a green, \a blue, \a alpha). | - |
532 | | - |
533 | For more information, see the OpenGL/ES 2.0 documentation for | - |
534 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBlendColor.xml}{glBlendColor()}. | - |
535 | */ | - |
536 | | - |
537 | /*! | - |
538 | \fn void QOpenGLFunctions::glBlendEquation(GLenum mode) | - |
539 | | - |
540 | Convenience function that calls glBlendEquation(\a mode). | - |
541 | | - |
542 | For more information, see the OpenGL/ES 2.0 documentation for | - |
543 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBlendEquation.xml}{glBlendEquation()}. | - |
544 | */ | - |
545 | | - |
546 | /*! | - |
547 | \fn void QOpenGLFunctions::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) | - |
548 | | - |
549 | Convenience function that calls glBlendEquationSeparate(\a modeRGB, \a modeAlpha). | - |
550 | | - |
551 | For more information, see the OpenGL/ES 2.0 documentation for | - |
552 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBlendEquationSeparate.xml}{glBlendEquationSeparate()}. | - |
553 | */ | - |
554 | | - |
555 | /*! | - |
556 | \fn void QOpenGLFunctions::glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) | - |
557 | | - |
558 | Convenience function that calls glBlendFuncSeparate(\a srcRGB, \a dstRGB, \a srcAlpha, \a dstAlpha). | - |
559 | | - |
560 | For more information, see the OpenGL/ES 2.0 documentation for | - |
561 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBlendFuncSeparate.xml}{glBlendFuncSeparate()}. | - |
562 | */ | - |
563 | | - |
564 | /*! | - |
565 | \fn void QOpenGLFunctions::glBufferData(GLenum target, qopengl_GLsizeiptr size, const void* data, GLenum usage) | - |
566 | | - |
567 | Convenience function that calls glBufferData(\a target, \a size, \a data, \a usage). | - |
568 | | - |
569 | For more information, see the OpenGL/ES 2.0 documentation for | - |
570 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBufferData.xml}{glBufferData()}. | - |
571 | */ | - |
572 | | - |
573 | /*! | - |
574 | \fn void QOpenGLFunctions::glBufferSubData(GLenum target, qopengl_GLintptr offset, qopengl_GLsizeiptr size, const void* data) | - |
575 | | - |
576 | Convenience function that calls glBufferSubData(\a target, \a offset, \a size, \a data). | - |
577 | | - |
578 | For more information, see the OpenGL/ES 2.0 documentation for | - |
579 | \l{http://www.khronos.org/opengles/sdk/docs/man/glBufferSubData.xml}{glBufferSubData()}. | - |
580 | */ | - |
581 | | - |
582 | /*! | - |
583 | \fn GLenum QOpenGLFunctions::glCheckFramebufferStatus(GLenum target) | - |
584 | | - |
585 | Convenience function that calls glCheckFramebufferStatus(\a target). | - |
586 | | - |
587 | For more information, see the OpenGL/ES 2.0 documentation for | - |
588 | \l{http://www.khronos.org/opengles/sdk/docs/man/glCheckFramebufferStatus.xml}{glCheckFramebufferStatus()}. | - |
589 | */ | - |
590 | | - |
591 | /*! | - |
592 | \fn void QOpenGLFunctions::glClearDepthf(GLclampf depth) | - |
593 | | - |
594 | Convenience function that calls glClearDepth(\a depth) on | - |
595 | desktop OpenGL systems and glClearDepthf(\a depth) on | - |
596 | embedded OpenGL/ES systems. | - |
597 | | - |
598 | For more information, see the OpenGL/ES 2.0 documentation for | - |
599 | \l{http://www.khronos.org/opengles/sdk/docs/man/glClearDepthf.xml}{glClearDepthf()}. | - |
600 | */ | - |
601 | | - |
602 | /*! | - |
603 | \fn void QOpenGLFunctions::glCompileShader(GLuint shader) | - |
604 | | - |
605 | Convenience function that calls glCompileShader(\a shader). | - |
606 | | - |
607 | For more information, see the OpenGL/ES 2.0 documentation for | - |
608 | \l{http://www.khronos.org/opengles/sdk/docs/man/glCompileShader.xml}{glCompileShader()}. | - |
609 | | - |
610 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
611 | */ | - |
612 | | - |
613 | /*! | - |
614 | \fn void QOpenGLFunctions::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data) | - |
615 | | - |
616 | Convenience function that calls glCompressedTexImage2D(\a target, \a level, \a internalformat, \a width, \a height, \a border, \a imageSize, \a data). | - |
617 | | - |
618 | For more information, see the OpenGL/ES 2.0 documentation for | - |
619 | \l{http://www.khronos.org/opengles/sdk/docs/man/glCompressedTexImage2D.xml}{glCompressedTexImage2D()}. | - |
620 | */ | - |
621 | | - |
622 | /*! | - |
623 | \fn void QOpenGLFunctions::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data) | - |
624 | | - |
625 | Convenience function that calls glCompressedTexSubImage2D(\a target, \a level, \a xoffset, \a yoffset, \a width, \a height, \a format, \a imageSize, \a data). | - |
626 | | - |
627 | For more information, see the OpenGL/ES 2.0 documentation for | - |
628 | \l{http://www.khronos.org/opengles/sdk/docs/man/glCompressedTexSubImage2D.xml}{glCompressedTexSubImage2D()}. | - |
629 | */ | - |
630 | | - |
631 | /*! | - |
632 | \fn GLuint QOpenGLFunctions::glCreateProgram() | - |
633 | | - |
634 | Convenience function that calls glCreateProgram(). | - |
635 | | - |
636 | For more information, see the OpenGL/ES 2.0 documentation for | - |
637 | \l{http://www.khronos.org/opengles/sdk/docs/man/glCreateProgram.xml}{glCreateProgram()}. | - |
638 | | - |
639 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
640 | */ | - |
641 | | - |
642 | /*! | - |
643 | \fn GLuint QOpenGLFunctions::glCreateShader(GLenum type) | - |
644 | | - |
645 | Convenience function that calls glCreateShader(\a type). | - |
646 | | - |
647 | For more information, see the OpenGL/ES 2.0 documentation for | - |
648 | \l{http://www.khronos.org/opengles/sdk/docs/man/glCreateShader.xml}{glCreateShader()}. | - |
649 | | - |
650 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
651 | */ | - |
652 | | - |
653 | /*! | - |
654 | \fn void QOpenGLFunctions::glDeleteBuffers(GLsizei n, const GLuint* buffers) | - |
655 | | - |
656 | Convenience function that calls glDeleteBuffers(\a n, \a buffers). | - |
657 | | - |
658 | For more information, see the OpenGL/ES 2.0 documentation for | - |
659 | \l{http://www.khronos.org/opengles/sdk/docs/man/glDeleteBuffers.xml}{glDeleteBuffers()}. | - |
660 | */ | - |
661 | | - |
662 | /*! | - |
663 | \fn void QOpenGLFunctions::glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers) | - |
664 | | - |
665 | Convenience function that calls glDeleteFramebuffers(\a n, \a framebuffers). | - |
666 | | - |
667 | For more information, see the OpenGL/ES 2.0 documentation for | - |
668 | \l{http://www.khronos.org/opengles/sdk/docs/man/glDeleteFramebuffers.xml}{glDeleteFramebuffers()}. | - |
669 | */ | - |
670 | | - |
671 | /*! | - |
672 | \fn void QOpenGLFunctions::glDeleteProgram(GLuint program) | - |
673 | | - |
674 | Convenience function that calls glDeleteProgram(\a program). | - |
675 | | - |
676 | For more information, see the OpenGL/ES 2.0 documentation for | - |
677 | \l{http://www.khronos.org/opengles/sdk/docs/man/glDeleteProgram.xml}{glDeleteProgram()}. | - |
678 | | - |
679 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
680 | */ | - |
681 | | - |
682 | /*! | - |
683 | \fn void QOpenGLFunctions::glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers) | - |
684 | | - |
685 | Convenience function that calls glDeleteRenderbuffers(\a n, \a renderbuffers). | - |
686 | | - |
687 | For more information, see the OpenGL/ES 2.0 documentation for | - |
688 | \l{http://www.khronos.org/opengles/sdk/docs/man/glDeleteRenderbuffers.xml}{glDeleteRenderbuffers()}. | - |
689 | */ | - |
690 | | - |
691 | /*! | - |
692 | \fn void QOpenGLFunctions::glDeleteShader(GLuint shader) | - |
693 | | - |
694 | Convenience function that calls glDeleteShader(\a shader). | - |
695 | | - |
696 | For more information, see the OpenGL/ES 2.0 documentation for | - |
697 | \l{http://www.khronos.org/opengles/sdk/docs/man/glDeleteShader.xml}{glDeleteShader()}. | - |
698 | | - |
699 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
700 | */ | - |
701 | | - |
702 | /*! | - |
703 | \fn void QOpenGLFunctions::glDepthRangef(GLclampf zNear, GLclampf zFar) | - |
704 | | - |
705 | Convenience function that calls glDepthRange(\a zNear, \a zFar) on | - |
706 | desktop OpenGL systems and glDepthRangef(\a zNear, \a zFar) on | - |
707 | embedded OpenGL/ES systems. | - |
708 | | - |
709 | For more information, see the OpenGL/ES 2.0 documentation for | - |
710 | \l{http://www.khronos.org/opengles/sdk/docs/man/glDepthRangef.xml}{glDepthRangef()}. | - |
711 | */ | - |
712 | | - |
713 | /*! | - |
714 | \fn void QOpenGLFunctions::glDetachShader(GLuint program, GLuint shader) | - |
715 | | - |
716 | Convenience function that calls glDetachShader(\a program, \a shader). | - |
717 | | - |
718 | For more information, see the OpenGL/ES 2.0 documentation for | - |
719 | \l{http://www.khronos.org/opengles/sdk/docs/man/glDetachShader.xml}{glDetachShader()}. | - |
720 | | - |
721 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
722 | */ | - |
723 | | - |
724 | /*! | - |
725 | \fn void QOpenGLFunctions::glDisableVertexAttribArray(GLuint index) | - |
726 | | - |
727 | Convenience function that calls glDisableVertexAttribArray(\a index). | - |
728 | | - |
729 | For more information, see the OpenGL/ES 2.0 documentation for | - |
730 | \l{http://www.khronos.org/opengles/sdk/docs/man/glDisableVertexAttribArray.xml}{glDisableVertexAttribArray()}. | - |
731 | | - |
732 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
733 | */ | - |
734 | | - |
735 | /*! | - |
736 | \fn void QOpenGLFunctions::glEnableVertexAttribArray(GLuint index) | - |
737 | | - |
738 | Convenience function that calls glEnableVertexAttribArray(\a index). | - |
739 | | - |
740 | For more information, see the OpenGL/ES 2.0 documentation for | - |
741 | \l{http://www.khronos.org/opengles/sdk/docs/man/glEnableVertexAttribArray.xml}{glEnableVertexAttribArray()}. | - |
742 | | - |
743 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
744 | */ | - |
745 | | - |
746 | /*! | - |
747 | \fn void QOpenGLFunctions::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) | - |
748 | | - |
749 | Convenience function that calls glFramebufferRenderbuffer(\a target, \a attachment, \a renderbuffertarget, \a renderbuffer). | - |
750 | | - |
751 | For more information, see the OpenGL/ES 2.0 documentation for | - |
752 | \l{http://www.khronos.org/opengles/sdk/docs/man/glFramebufferRenderbuffer.xml}{glFramebufferRenderbuffer()}. | - |
753 | */ | - |
754 | | - |
755 | /*! | - |
756 | \fn void QOpenGLFunctions::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) | - |
757 | | - |
758 | Convenience function that calls glFramebufferTexture2D(\a target, \a attachment, \a textarget, \a texture, \a level). | - |
759 | | - |
760 | For more information, see the OpenGL/ES 2.0 documentation for | - |
761 | \l{http://www.khronos.org/opengles/sdk/docs/man/glFramebufferTexture2D.xml}{glFramebufferTexture2D()}. | - |
762 | */ | - |
763 | | - |
764 | /*! | - |
765 | \fn void QOpenGLFunctions::glGenBuffers(GLsizei n, GLuint* buffers) | - |
766 | | - |
767 | Convenience function that calls glGenBuffers(\a n, \a buffers). | - |
768 | | - |
769 | For more information, see the OpenGL/ES 2.0 documentation for | - |
770 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGenBuffers.xml}{glGenBuffers()}. | - |
771 | */ | - |
772 | | - |
773 | /*! | - |
774 | \fn void QOpenGLFunctions::glGenerateMipmap(GLenum target) | - |
775 | | - |
776 | Convenience function that calls glGenerateMipmap(\a target). | - |
777 | | - |
778 | For more information, see the OpenGL/ES 2.0 documentation for | - |
779 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGenerateMipmap.xml}{glGenerateMipmap()}. | - |
780 | */ | - |
781 | | - |
782 | /*! | - |
783 | \fn void QOpenGLFunctions::glGenFramebuffers(GLsizei n, GLuint* framebuffers) | - |
784 | | - |
785 | Convenience function that calls glGenFramebuffers(\a n, \a framebuffers). | - |
786 | | - |
787 | For more information, see the OpenGL/ES 2.0 documentation for | - |
788 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGenFramebuffers.xml}{glGenFramebuffers()}. | - |
789 | */ | - |
790 | | - |
791 | /*! | - |
792 | \fn void QOpenGLFunctions::glGenRenderbuffers(GLsizei n, GLuint* renderbuffers) | - |
793 | | - |
794 | Convenience function that calls glGenRenderbuffers(\a n, \a renderbuffers). | - |
795 | | - |
796 | For more information, see the OpenGL/ES 2.0 documentation for | - |
797 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGenRenderbuffers.xml}{glGenRenderbuffers()}. | - |
798 | */ | - |
799 | | - |
800 | /*! | - |
801 | \fn void QOpenGLFunctions::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) | - |
802 | | - |
803 | Convenience function that calls glGetActiveAttrib(\a program, \a index, \a bufsize, \a length, \a size, \a type, \a name). | - |
804 | | - |
805 | For more information, see the OpenGL/ES 2.0 documentation for | - |
806 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetActiveAttrib.xml}{glGetActiveAttrib()}. | - |
807 | | - |
808 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
809 | */ | - |
810 | | - |
811 | /*! | - |
812 | \fn void QOpenGLFunctions::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) | - |
813 | | - |
814 | Convenience function that calls glGetActiveUniform(\a program, \a index, \a bufsize, \a length, \a size, \a type, \a name). | - |
815 | | - |
816 | For more information, see the OpenGL/ES 2.0 documentation for | - |
817 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetActiveUniform.xml}{glGetActiveUniform()}. | - |
818 | | - |
819 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
820 | */ | - |
821 | | - |
822 | /*! | - |
823 | \fn void QOpenGLFunctions::glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders) | - |
824 | | - |
825 | Convenience function that calls glGetAttachedShaders(\a program, \a maxcount, \a count, \a shaders). | - |
826 | | - |
827 | For more information, see the OpenGL/ES 2.0 documentation for | - |
828 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetAttachedShaders.xml}{glGetAttachedShaders()}. | - |
829 | | - |
830 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
831 | */ | - |
832 | | - |
833 | /*! | - |
834 | \fn GLint QOpenGLFunctions::glGetAttribLocation(GLuint program, const char* name) | - |
835 | | - |
836 | Convenience function that calls glGetAttribLocation(\a program, \a name). | - |
837 | | - |
838 | For more information, see the OpenGL/ES 2.0 documentation for | - |
839 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetAttribLocation.xml}{glGetAttribLocation()}. | - |
840 | | - |
841 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
842 | */ | - |
843 | | - |
844 | /*! | - |
845 | \fn void QOpenGLFunctions::glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params) | - |
846 | | - |
847 | Convenience function that calls glGetBufferParameteriv(\a target, \a pname, \a params). | - |
848 | | - |
849 | For more information, see the OpenGL/ES 2.0 documentation for | - |
850 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetBufferParameteriv.xml}{glGetBufferParameteriv()}. | - |
851 | */ | - |
852 | | - |
853 | /*! | - |
854 | \fn void QOpenGLFunctions::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params) | - |
855 | | - |
856 | Convenience function that calls glGetFramebufferAttachmentParameteriv(\a target, \a attachment, \a pname, \a params). | - |
857 | | - |
858 | For more information, see the OpenGL/ES 2.0 documentation for | - |
859 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetFramebufferAttachmentParameteriv.xml}{glGetFramebufferAttachmentParameteriv()}. | - |
860 | */ | - |
861 | | - |
862 | /*! | - |
863 | \fn void QOpenGLFunctions::glGetProgramiv(GLuint program, GLenum pname, GLint* params) | - |
864 | | - |
865 | Convenience function that calls glGetProgramiv(\a program, \a pname, \a params). | - |
866 | | - |
867 | For more information, see the OpenGL/ES 2.0 documentation for | - |
868 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetProgramiv.xml}{glGetProgramiv()}. | - |
869 | | - |
870 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
871 | */ | - |
872 | | - |
873 | /*! | - |
874 | \fn void QOpenGLFunctions::glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, char* infolog) | - |
875 | | - |
876 | Convenience function that calls glGetProgramInfoLog(\a program, \a bufsize, \a length, \a infolog). | - |
877 | | - |
878 | For more information, see the OpenGL/ES 2.0 documentation for | - |
879 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetProgramInfoLog.xml}{glGetProgramInfoLog()}. | - |
880 | | - |
881 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
882 | */ | - |
883 | | - |
884 | /*! | - |
885 | \fn void QOpenGLFunctions::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params) | - |
886 | | - |
887 | Convenience function that calls glGetRenderbufferParameteriv(\a target, \a pname, \a params). | - |
888 | | - |
889 | For more information, see the OpenGL/ES 2.0 documentation for | - |
890 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetRenderbufferParameteriv.xml}{glGetRenderbufferParameteriv()}. | - |
891 | */ | - |
892 | | - |
893 | /*! | - |
894 | \fn void QOpenGLFunctions::glGetShaderiv(GLuint shader, GLenum pname, GLint* params) | - |
895 | | - |
896 | Convenience function that calls glGetShaderiv(\a shader, \a pname, \a params). | - |
897 | | - |
898 | For more information, see the OpenGL/ES 2.0 documentation for | - |
899 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetShaderiv.xml}{glGetShaderiv()}. | - |
900 | | - |
901 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
902 | */ | - |
903 | | - |
904 | /*! | - |
905 | \fn void QOpenGLFunctions::glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog) | - |
906 | | - |
907 | Convenience function that calls glGetShaderInfoLog(\a shader, \a bufsize, \a length, \a infolog). | - |
908 | | - |
909 | For more information, see the OpenGL/ES 2.0 documentation for | - |
910 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetShaderInfoLog.xml}{glGetShaderInfoLog()}. | - |
911 | | - |
912 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
913 | */ | - |
914 | | - |
915 | /*! | - |
916 | \fn void QOpenGLFunctions::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) | - |
917 | | - |
918 | Convenience function that calls glGetShaderPrecisionFormat(\a shadertype, \a precisiontype, \a range, \a precision). | - |
919 | | - |
920 | For more information, see the OpenGL/ES 2.0 documentation for | - |
921 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetShaderPrecisionFormat.xml}{glGetShaderPrecisionFormat()}. | - |
922 | | - |
923 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
924 | */ | - |
925 | | - |
926 | /*! | - |
927 | \fn void QOpenGLFunctions::glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, char* source) | - |
928 | | - |
929 | Convenience function that calls glGetShaderSource(\a shader, \a bufsize, \a length, \a source). | - |
930 | | - |
931 | For more information, see the OpenGL/ES 2.0 documentation for | - |
932 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetShaderSource.xml}{glGetShaderSource()}. | - |
933 | | - |
934 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
935 | */ | - |
936 | | - |
937 | /*! | - |
938 | \fn void QOpenGLFunctions::glGetUniformfv(GLuint program, GLint location, GLfloat* params) | - |
939 | | - |
940 | Convenience function that calls glGetUniformfv(\a program, \a location, \a params). | - |
941 | | - |
942 | For more information, see the OpenGL/ES 2.0 documentation for | - |
943 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetUniformfv.xml}{glGetUniformfv()}. | - |
944 | | - |
945 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
946 | */ | - |
947 | | - |
948 | /*! | - |
949 | \fn void QOpenGLFunctions::glGetUniformiv(GLuint program, GLint location, GLint* params) | - |
950 | | - |
951 | Convenience function that calls glGetUniformiv(\a program, \a location, \a params). | - |
952 | | - |
953 | For more information, see the OpenGL/ES 2.0 documentation for | - |
954 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetUniformiv.xml}{glGetUniformiv()}. | - |
955 | | - |
956 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
957 | */ | - |
958 | | - |
959 | /*! | - |
960 | \fn GLint QOpenGLFunctions::glGetUniformLocation(GLuint program, const char* name) | - |
961 | | - |
962 | Convenience function that calls glGetUniformLocation(\a program, \a name). | - |
963 | | - |
964 | For more information, see the OpenGL/ES 2.0 documentation for | - |
965 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetUniformLocation.xml}{glGetUniformLocation()}. | - |
966 | | - |
967 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
968 | */ | - |
969 | | - |
970 | /*! | - |
971 | \fn void QOpenGLFunctions::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params) | - |
972 | | - |
973 | Convenience function that calls glGetVertexAttribfv(\a index, \a pname, \a params). | - |
974 | | - |
975 | For more information, see the OpenGL/ES 2.0 documentation for | - |
976 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetVertexAttribfv.xml}{glGetVertexAttribfv()}. | - |
977 | | - |
978 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
979 | */ | - |
980 | | - |
981 | /*! | - |
982 | \fn void QOpenGLFunctions::glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params) | - |
983 | | - |
984 | Convenience function that calls glGetVertexAttribiv(\a index, \a pname, \a params). | - |
985 | | - |
986 | For more information, see the OpenGL/ES 2.0 documentation for | - |
987 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetVertexAttribiv.xml}{glGetVertexAttribiv()}. | - |
988 | | - |
989 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
990 | */ | - |
991 | | - |
992 | /*! | - |
993 | \fn void QOpenGLFunctions::glGetVertexAttribPointerv(GLuint index, GLenum pname, void** pointer) | - |
994 | | - |
995 | Convenience function that calls glGetVertexAttribPointerv(\a index, \a pname, \a pointer). | - |
996 | | - |
997 | For more information, see the OpenGL/ES 2.0 documentation for | - |
998 | \l{http://www.khronos.org/opengles/sdk/docs/man/glGetVertexAttribPointerv.xml}{glGetVertexAttribPointerv()}. | - |
999 | | - |
1000 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1001 | */ | - |
1002 | | - |
1003 | /*! | - |
1004 | \fn GLboolean QOpenGLFunctions::glIsBuffer(GLuint buffer) | - |
1005 | | - |
1006 | Convenience function that calls glIsBuffer(\a buffer). | - |
1007 | | - |
1008 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1009 | \l{http://www.khronos.org/opengles/sdk/docs/man/glIsBuffer.xml}{glIsBuffer()}. | - |
1010 | */ | - |
1011 | | - |
1012 | /*! | - |
1013 | \fn GLboolean QOpenGLFunctions::glIsFramebuffer(GLuint framebuffer) | - |
1014 | | - |
1015 | Convenience function that calls glIsFramebuffer(\a framebuffer). | - |
1016 | | - |
1017 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1018 | \l{http://www.khronos.org/opengles/sdk/docs/man/glIsFramebuffer.xml}{glIsFramebuffer()}. | - |
1019 | */ | - |
1020 | | - |
1021 | /*! | - |
1022 | \fn GLboolean QOpenGLFunctions::glIsProgram(GLuint program) | - |
1023 | | - |
1024 | Convenience function that calls glIsProgram(\a program). | - |
1025 | | - |
1026 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1027 | \l{http://www.khronos.org/opengles/sdk/docs/man/glIsProgram.xml}{glIsProgram()}. | - |
1028 | | - |
1029 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1030 | */ | - |
1031 | | - |
1032 | /*! | - |
1033 | \fn GLboolean QOpenGLFunctions::glIsRenderbuffer(GLuint renderbuffer) | - |
1034 | | - |
1035 | Convenience function that calls glIsRenderbuffer(\a renderbuffer). | - |
1036 | | - |
1037 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1038 | \l{http://www.khronos.org/opengles/sdk/docs/man/glIsRenderbuffer.xml}{glIsRenderbuffer()}. | - |
1039 | */ | - |
1040 | | - |
1041 | /*! | - |
1042 | \fn GLboolean QOpenGLFunctions::glIsShader(GLuint shader) | - |
1043 | | - |
1044 | Convenience function that calls glIsShader(\a shader). | - |
1045 | | - |
1046 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1047 | \l{http://www.khronos.org/opengles/sdk/docs/man/glIsShader.xml}{glIsShader()}. | - |
1048 | | - |
1049 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1050 | */ | - |
1051 | | - |
1052 | /*! | - |
1053 | \fn void QOpenGLFunctions::glLinkProgram(GLuint program) | - |
1054 | | - |
1055 | Convenience function that calls glLinkProgram(\a program). | - |
1056 | | - |
1057 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1058 | \l{http://www.khronos.org/opengles/sdk/docs/man/glLinkProgram.xml}{glLinkProgram()}. | - |
1059 | | - |
1060 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1061 | */ | - |
1062 | | - |
1063 | /*! | - |
1064 | \fn void QOpenGLFunctions::glReleaseShaderCompiler() | - |
1065 | | - |
1066 | Convenience function that calls glReleaseShaderCompiler(). | - |
1067 | | - |
1068 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1069 | \l{http://www.khronos.org/opengles/sdk/docs/man/glReleaseShaderCompiler.xml}{glReleaseShaderCompiler()}. | - |
1070 | | - |
1071 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1072 | */ | - |
1073 | | - |
1074 | /*! | - |
1075 | \fn void QOpenGLFunctions::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) | - |
1076 | | - |
1077 | Convenience function that calls glRenderbufferStorage(\a target, \a internalformat, \a width, \a height). | - |
1078 | | - |
1079 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1080 | \l{http://www.khronos.org/opengles/sdk/docs/man/glRenderbufferStorage.xml}{glRenderbufferStorage()}. | - |
1081 | */ | - |
1082 | | - |
1083 | /*! | - |
1084 | \fn void QOpenGLFunctions::glSampleCoverage(GLclampf value, GLboolean invert) | - |
1085 | | - |
1086 | Convenience function that calls glSampleCoverage(\a value, \a invert). | - |
1087 | | - |
1088 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1089 | \l{http://www.khronos.org/opengles/sdk/docs/man/glSampleCoverage.xml}{glSampleCoverage()}. | - |
1090 | */ | - |
1091 | | - |
1092 | /*! | - |
1093 | \fn void QOpenGLFunctions::glShaderBinary(GLint n, const GLuint* shaders, GLenum binaryformat, const void* binary, GLint length) | - |
1094 | | - |
1095 | Convenience function that calls glShaderBinary(\a n, \a shaders, \a binaryformat, \a binary, \a length). | - |
1096 | | - |
1097 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1098 | \l{http://www.khronos.org/opengles/sdk/docs/man/glShaderBinary.xml}{glShaderBinary()}. | - |
1099 | | - |
1100 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1101 | */ | - |
1102 | | - |
1103 | /*! | - |
1104 | \fn void QOpenGLFunctions::glShaderSource(GLuint shader, GLsizei count, const char** string, const GLint* length) | - |
1105 | | - |
1106 | Convenience function that calls glShaderSource(\a shader, \a count, \a string, \a length). | - |
1107 | | - |
1108 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1109 | \l{http://www.khronos.org/opengles/sdk/docs/man/glShaderSource.xml}{glShaderSource()}. | - |
1110 | | - |
1111 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1112 | */ | - |
1113 | | - |
1114 | /*! | - |
1115 | \fn void QOpenGLFunctions::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) | - |
1116 | | - |
1117 | Convenience function that calls glStencilFuncSeparate(\a face, \a func, \a ref, \a mask). | - |
1118 | | - |
1119 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1120 | \l{http://www.khronos.org/opengles/sdk/docs/man/glStencilFuncSeparate.xml}{glStencilFuncSeparate()}. | - |
1121 | */ | - |
1122 | | - |
1123 | /*! | - |
1124 | \fn void QOpenGLFunctions::glStencilMaskSeparate(GLenum face, GLuint mask) | - |
1125 | | - |
1126 | Convenience function that calls glStencilMaskSeparate(\a face, \a mask). | - |
1127 | | - |
1128 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1129 | \l{http://www.khronos.org/opengles/sdk/docs/man/glStencilMaskSeparate.xml}{glStencilMaskSeparate()}. | - |
1130 | */ | - |
1131 | | - |
1132 | /*! | - |
1133 | \fn void QOpenGLFunctions::glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass) | - |
1134 | | - |
1135 | Convenience function that calls glStencilOpSeparate(\a face, \a fail, \a zfail, \a zpass). | - |
1136 | | - |
1137 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1138 | \l{http://www.khronos.org/opengles/sdk/docs/man/glStencilOpSeparate.xml}{glStencilOpSeparate()}. | - |
1139 | */ | - |
1140 | | - |
1141 | /*! | - |
1142 | \fn void QOpenGLFunctions::glUniform1f(GLint location, GLfloat x) | - |
1143 | | - |
1144 | Convenience function that calls glUniform1f(\a location, \a x). | - |
1145 | | - |
1146 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1147 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform1f.xml}{glUniform1f()}. | - |
1148 | | - |
1149 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1150 | */ | - |
1151 | | - |
1152 | /*! | - |
1153 | \fn void QOpenGLFunctions::glUniform1fv(GLint location, GLsizei count, const GLfloat* v) | - |
1154 | | - |
1155 | Convenience function that calls glUniform1fv(\a location, \a count, \a v). | - |
1156 | | - |
1157 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1158 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform1fv.xml}{glUniform1fv()}. | - |
1159 | | - |
1160 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1161 | */ | - |
1162 | | - |
1163 | /*! | - |
1164 | \fn void QOpenGLFunctions::glUniform1i(GLint location, GLint x) | - |
1165 | | - |
1166 | Convenience function that calls glUniform1i(\a location, \a x). | - |
1167 | | - |
1168 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1169 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform1i.xml}{glUniform1i()}. | - |
1170 | | - |
1171 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1172 | */ | - |
1173 | | - |
1174 | /*! | - |
1175 | \fn void QOpenGLFunctions::glUniform1iv(GLint location, GLsizei count, const GLint* v) | - |
1176 | | - |
1177 | Convenience function that calls glUniform1iv(\a location, \a count, \a v). | - |
1178 | | - |
1179 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1180 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform1iv.xml}{glUniform1iv()}. | - |
1181 | | - |
1182 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1183 | */ | - |
1184 | | - |
1185 | /*! | - |
1186 | \fn void QOpenGLFunctions::glUniform2f(GLint location, GLfloat x, GLfloat y) | - |
1187 | | - |
1188 | Convenience function that calls glUniform2f(\a location, \a x, \a y). | - |
1189 | | - |
1190 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1191 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform2f.xml}{glUniform2f()}. | - |
1192 | | - |
1193 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1194 | */ | - |
1195 | | - |
1196 | /*! | - |
1197 | \fn void QOpenGLFunctions::glUniform2fv(GLint location, GLsizei count, const GLfloat* v) | - |
1198 | | - |
1199 | Convenience function that calls glUniform2fv(\a location, \a count, \a v). | - |
1200 | | - |
1201 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1202 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform2fv.xml}{glUniform2fv()}. | - |
1203 | | - |
1204 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1205 | */ | - |
1206 | | - |
1207 | /*! | - |
1208 | \fn void QOpenGLFunctions::glUniform2i(GLint location, GLint x, GLint y) | - |
1209 | | - |
1210 | Convenience function that calls glUniform2i(\a location, \a x, \a y). | - |
1211 | | - |
1212 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1213 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform2i.xml}{glUniform2i()}. | - |
1214 | | - |
1215 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1216 | */ | - |
1217 | | - |
1218 | /*! | - |
1219 | \fn void QOpenGLFunctions::glUniform2iv(GLint location, GLsizei count, const GLint* v) | - |
1220 | | - |
1221 | Convenience function that calls glUniform2iv(\a location, \a count, \a v). | - |
1222 | | - |
1223 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1224 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform2iv.xml}{glUniform2iv()}. | - |
1225 | | - |
1226 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1227 | */ | - |
1228 | | - |
1229 | /*! | - |
1230 | \fn void QOpenGLFunctions::glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) | - |
1231 | | - |
1232 | Convenience function that calls glUniform3f(\a location, \a x, \a y, \a z). | - |
1233 | | - |
1234 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1235 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform3f.xml}{glUniform3f()}. | - |
1236 | | - |
1237 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1238 | */ | - |
1239 | | - |
1240 | /*! | - |
1241 | \fn void QOpenGLFunctions::glUniform3fv(GLint location, GLsizei count, const GLfloat* v) | - |
1242 | | - |
1243 | Convenience function that calls glUniform3fv(\a location, \a count, \a v). | - |
1244 | | - |
1245 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1246 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform3fv.xml}{glUniform3fv()}. | - |
1247 | | - |
1248 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1249 | */ | - |
1250 | | - |
1251 | /*! | - |
1252 | \fn void QOpenGLFunctions::glUniform3i(GLint location, GLint x, GLint y, GLint z) | - |
1253 | | - |
1254 | Convenience function that calls glUniform3i(\a location, \a x, \a y, \a z). | - |
1255 | | - |
1256 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1257 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform3i.xml}{glUniform3i()}. | - |
1258 | | - |
1259 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1260 | */ | - |
1261 | | - |
1262 | /*! | - |
1263 | \fn void QOpenGLFunctions::glUniform3iv(GLint location, GLsizei count, const GLint* v) | - |
1264 | | - |
1265 | Convenience function that calls glUniform3iv(\a location, \a count, \a v). | - |
1266 | | - |
1267 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1268 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform3iv.xml}{glUniform3iv()}. | - |
1269 | | - |
1270 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1271 | */ | - |
1272 | | - |
1273 | /*! | - |
1274 | \fn void QOpenGLFunctions::glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) | - |
1275 | | - |
1276 | Convenience function that calls glUniform4f(\a location, \a x, \a y, \a z, \a w). | - |
1277 | | - |
1278 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1279 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform4f.xml}{glUniform4f()}. | - |
1280 | | - |
1281 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1282 | */ | - |
1283 | | - |
1284 | /*! | - |
1285 | \fn void QOpenGLFunctions::glUniform4fv(GLint location, GLsizei count, const GLfloat* v) | - |
1286 | | - |
1287 | Convenience function that calls glUniform4fv(\a location, \a count, \a v). | - |
1288 | | - |
1289 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1290 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform4fv.xml}{glUniform4fv()}. | - |
1291 | | - |
1292 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1293 | */ | - |
1294 | | - |
1295 | /*! | - |
1296 | \fn void QOpenGLFunctions::glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) | - |
1297 | | - |
1298 | Convenience function that calls glUniform4i(\a location, \a x, \a y, \a z, \a w). | - |
1299 | | - |
1300 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1301 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform4i.xml}{glUniform4i()}. | - |
1302 | | - |
1303 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1304 | */ | - |
1305 | | - |
1306 | /*! | - |
1307 | \fn void QOpenGLFunctions::glUniform4iv(GLint location, GLsizei count, const GLint* v) | - |
1308 | | - |
1309 | Convenience function that calls glUniform4iv(\a location, \a count, \a v). | - |
1310 | | - |
1311 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1312 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniform4iv.xml}{glUniform4iv()}. | - |
1313 | | - |
1314 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1315 | */ | - |
1316 | | - |
1317 | /*! | - |
1318 | \fn void QOpenGLFunctions::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) | - |
1319 | | - |
1320 | Convenience function that calls glUniformMatrix2fv(\a location, \a count, \a transpose, \a value). | - |
1321 | | - |
1322 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1323 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniformMatrix2fv.xml}{glUniformMatrix2fv()}. | - |
1324 | | - |
1325 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1326 | */ | - |
1327 | | - |
1328 | /*! | - |
1329 | \fn void QOpenGLFunctions::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) | - |
1330 | | - |
1331 | Convenience function that calls glUniformMatrix3fv(\a location, \a count, \a transpose, \a value). | - |
1332 | | - |
1333 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1334 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniformMatrix3fv.xml}{glUniformMatrix3fv()}. | - |
1335 | | - |
1336 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1337 | */ | - |
1338 | | - |
1339 | /*! | - |
1340 | \fn void QOpenGLFunctions::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) | - |
1341 | | - |
1342 | Convenience function that calls glUniformMatrix4fv(\a location, \a count, \a transpose, \a value). | - |
1343 | | - |
1344 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1345 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUniformMatrix4fv.xml}{glUniformMatrix4fv()}. | - |
1346 | | - |
1347 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1348 | */ | - |
1349 | | - |
1350 | /*! | - |
1351 | \fn void QOpenGLFunctions::glUseProgram(GLuint program) | - |
1352 | | - |
1353 | Convenience function that calls glUseProgram(\a program). | - |
1354 | | - |
1355 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1356 | \l{http://www.khronos.org/opengles/sdk/docs/man/glUseProgram.xml}{glUseProgram()}. | - |
1357 | | - |
1358 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1359 | */ | - |
1360 | | - |
1361 | /*! | - |
1362 | \fn void QOpenGLFunctions::glValidateProgram(GLuint program) | - |
1363 | | - |
1364 | Convenience function that calls glValidateProgram(\a program). | - |
1365 | | - |
1366 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1367 | \l{http://www.khronos.org/opengles/sdk/docs/man/glValidateProgram.xml}{glValidateProgram()}. | - |
1368 | | - |
1369 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1370 | */ | - |
1371 | | - |
1372 | /*! | - |
1373 | \fn void QOpenGLFunctions::glVertexAttrib1f(GLuint indx, GLfloat x) | - |
1374 | | - |
1375 | Convenience function that calls glVertexAttrib1f(\a indx, \a x). | - |
1376 | | - |
1377 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1378 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttrib1f.xml}{glVertexAttrib1f()}. | - |
1379 | | - |
1380 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1381 | */ | - |
1382 | | - |
1383 | /*! | - |
1384 | \fn void QOpenGLFunctions::glVertexAttrib1fv(GLuint indx, const GLfloat* values) | - |
1385 | | - |
1386 | Convenience function that calls glVertexAttrib1fv(\a indx, \a values). | - |
1387 | | - |
1388 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1389 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttrib1fv.xml}{glVertexAttrib1fv()}. | - |
1390 | | - |
1391 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1392 | */ | - |
1393 | | - |
1394 | /*! | - |
1395 | \fn void QOpenGLFunctions::glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) | - |
1396 | | - |
1397 | Convenience function that calls glVertexAttrib2f(\a indx, \a x, \a y). | - |
1398 | | - |
1399 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1400 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttrib2f.xml}{glVertexAttrib2f()}. | - |
1401 | | - |
1402 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1403 | */ | - |
1404 | | - |
1405 | /*! | - |
1406 | \fn void QOpenGLFunctions::glVertexAttrib2fv(GLuint indx, const GLfloat* values) | - |
1407 | | - |
1408 | Convenience function that calls glVertexAttrib2fv(\a indx, \a values). | - |
1409 | | - |
1410 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1411 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttrib2fv.xml}{glVertexAttrib2fv()}. | - |
1412 | | - |
1413 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1414 | */ | - |
1415 | | - |
1416 | /*! | - |
1417 | \fn void QOpenGLFunctions::glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z) | - |
1418 | | - |
1419 | Convenience function that calls glVertexAttrib3f(\a indx, \a x, \a y, \a z). | - |
1420 | | - |
1421 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1422 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttrib3f.xml}{glVertexAttrib3f()}. | - |
1423 | | - |
1424 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1425 | */ | - |
1426 | | - |
1427 | /*! | - |
1428 | \fn void QOpenGLFunctions::glVertexAttrib3fv(GLuint indx, const GLfloat* values) | - |
1429 | | - |
1430 | Convenience function that calls glVertexAttrib3fv(\a indx, \a values). | - |
1431 | | - |
1432 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1433 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttrib3fv.xml}{glVertexAttrib3fv()}. | - |
1434 | | - |
1435 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1436 | */ | - |
1437 | | - |
1438 | /*! | - |
1439 | \fn void QOpenGLFunctions::glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) | - |
1440 | | - |
1441 | Convenience function that calls glVertexAttrib4f(\a indx, \a x, \a y, \a z, \a w). | - |
1442 | | - |
1443 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1444 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttrib4f.xml}{glVertexAttrib4f()}. | - |
1445 | | - |
1446 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1447 | */ | - |
1448 | | - |
1449 | /*! | - |
1450 | \fn void QOpenGLFunctions::glVertexAttrib4fv(GLuint indx, const GLfloat* values) | - |
1451 | | - |
1452 | Convenience function that calls glVertexAttrib4fv(\a indx, \a values). | - |
1453 | | - |
1454 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1455 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttrib4fv.xml}{glVertexAttrib4fv()}. | - |
1456 | | - |
1457 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1458 | */ | - |
1459 | | - |
1460 | /*! | - |
1461 | \fn void QOpenGLFunctions::glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* ptr) | - |
1462 | | - |
1463 | Convenience function that calls glVertexAttribPointer(\a indx, \a size, \a type, \a normalized, \a stride, \a ptr). | - |
1464 | | - |
1465 | For more information, see the OpenGL/ES 2.0 documentation for | - |
1466 | \l{http://www.khronos.org/opengles/sdk/docs/man/glVertexAttribPointer.xml}{glVertexAttribPointer()}. | - |
1467 | | - |
1468 | This convenience function will do nothing on OpenGL/ES 1.x systems. | - |
1469 | */ | - |
1470 | | - |
1471 | /*! | - |
1472 | \fn bool QOpenGLFunctions::isInitialized(const QOpenGLFunctionsPrivate *d) | - |
1473 | \internal | - |
1474 | */ | - |
1475 | | - |
1476 | namespace { | - |
1477 | | - |
1478 | enum ResolvePolicy | - |
1479 | { | - |
1480 | ResolveOES = 0x1, | - |
1481 | ResolveEXT = 0x2 | - |
1482 | }; | - |
1483 | | - |
1484 | template <typename Base, typename FuncType, int Policy, typename ReturnType> | - |
1485 | class Resolver | - |
1486 | { | - |
1487 | public: | - |
1488 | Resolver(FuncType Base::*func, FuncType fallback, const char *name, const char *alternateName = 0) | - |
1489 | : funcPointerName(func) | - |
1490 | , fallbackFuncPointer(fallback) | - |
1491 | , funcName(name) | - |
1492 | , alternateFuncName(alternateName) | - |
1493 | { | - |
1494 | } | 0 |
1495 | | - |
1496 | ReturnType operator()(); | - |
1497 | | - |
1498 | template <typename P1> | - |
1499 | ReturnType operator()(P1 p1); | - |
1500 | | - |
1501 | template <typename P1, typename P2> | - |
1502 | ReturnType operator()(P1 p1, P2 p2); | - |
1503 | | - |
1504 | template <typename P1, typename P2, typename P3> | - |
1505 | ReturnType operator()(P1 p1, P2 p2, P3 p3); | - |
1506 | | - |
1507 | template <typename P1, typename P2, typename P3, typename P4> | - |
1508 | ReturnType operator()(P1 p1, P2 p2, P3 p3, P4 p4); | - |
1509 | | - |
1510 | template <typename P1, typename P2, typename P3, typename P4, typename P5> | - |
1511 | ReturnType operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5); | - |
1512 | | - |
1513 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6> | - |
1514 | ReturnType operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6); | - |
1515 | | - |
1516 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7> | - |
1517 | ReturnType operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7); | - |
1518 | | - |
1519 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8> | - |
1520 | ReturnType operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8); | - |
1521 | | - |
1522 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9> | - |
1523 | ReturnType operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9); | - |
1524 | | - |
1525 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10> | - |
1526 | ReturnType operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10); | - |
1527 | | - |
1528 | private: | - |
1529 | FuncType Base::*funcPointerName; | - |
1530 | FuncType fallbackFuncPointer; | - |
1531 | QByteArray funcName; | - |
1532 | QByteArray alternateFuncName; | - |
1533 | }; | - |
1534 | | - |
1535 | template <typename Base, typename FuncType, int Policy> | - |
1536 | class Resolver<Base, FuncType, Policy, void> | - |
1537 | { | - |
1538 | public: | - |
1539 | Resolver(FuncType Base::*func, FuncType fallback, const char *name, const char *alternateName = 0) | - |
1540 | : funcPointerName(func) | - |
1541 | , fallbackFuncPointer(fallback) | - |
1542 | , funcName(name) | - |
1543 | , alternateFuncName(alternateName) | - |
1544 | { | - |
1545 | } | 0 |
1546 | | - |
1547 | void operator()(); | - |
1548 | | - |
1549 | template <typename P1> | - |
1550 | void operator()(P1 p1); | - |
1551 | | - |
1552 | template <typename P1, typename P2> | - |
1553 | void operator()(P1 p1, P2 p2); | - |
1554 | | - |
1555 | template <typename P1, typename P2, typename P3> | - |
1556 | void operator()(P1 p1, P2 p2, P3 p3); | - |
1557 | | - |
1558 | template <typename P1, typename P2, typename P3, typename P4> | - |
1559 | void operator()(P1 p1, P2 p2, P3 p3, P4 p4); | - |
1560 | | - |
1561 | template <typename P1, typename P2, typename P3, typename P4, typename P5> | - |
1562 | void operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5); | - |
1563 | | - |
1564 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6> | - |
1565 | void operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6); | - |
1566 | | - |
1567 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7> | - |
1568 | void operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7); | - |
1569 | | - |
1570 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8> | - |
1571 | void operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8); | - |
1572 | | - |
1573 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9> | - |
1574 | void operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9); | - |
1575 | | - |
1576 | template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10> | - |
1577 | void operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10); | - |
1578 | | - |
1579 | private: | - |
1580 | FuncType Base::*funcPointerName; | - |
1581 | FuncType fallbackFuncPointer; | - |
1582 | QByteArray funcName; | - |
1583 | QByteArray alternateFuncName; | - |
1584 | }; | - |
1585 | | - |
1586 | #define RESOLVER_COMMON \ | - |
1587 | QOpenGLContext *context = QOpenGLContext::currentContext(); \ | - |
1588 | Base *funcs = qt_gl_functions(context); \ | - |
1589 | \ | - |
1590 | FuncType old = funcs->*funcPointerName; \ | - |
1591 | \ | - |
1592 | funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName); \ | - |
1593 | \ | - |
1594 | if ((Policy & ResolveOES) && !(funcs->*funcPointerName)) \ | - |
1595 | funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); \ | - |
1596 | \ | - |
1597 | if (!(funcs->*funcPointerName)) \ | - |
1598 | funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); \ | - |
1599 | \ | - |
1600 | if ((Policy & ResolveEXT) && !(funcs->*funcPointerName)) \ | - |
1601 | funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); \ | - |
1602 | \ | - |
1603 | if (!alternateFuncName.isEmpty() && !(funcs->*funcPointerName)) { \ | - |
1604 | funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName); \ | - |
1605 | \ | - |
1606 | if ((Policy & ResolveOES) && !(funcs->*funcPointerName)) \ | - |
1607 | funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); \ | - |
1608 | \ | - |
1609 | if (!(funcs->*funcPointerName)) \ | - |
1610 | funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); \ | - |
1611 | \ | - |
1612 | if ((Policy & ResolveEXT) && !(funcs->*funcPointerName)) \ | - |
1613 | funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); \ | - |
1614 | } | - |
1615 | | - |
1616 | #define RESOLVER_COMMON_NON_VOID \ | - |
1617 | RESOLVER_COMMON \ | - |
1618 | \ | - |
1619 | if (!(funcs->*funcPointerName)) { \ | - |
1620 | if (fallbackFuncPointer) { \ | - |
1621 | funcs->*funcPointerName = fallbackFuncPointer; \ | - |
1622 | } else { \ | - |
1623 | funcs->*funcPointerName = old; \ | - |
1624 | return ReturnType(); \ | - |
1625 | } \ | - |
1626 | } | - |
1627 | | - |
1628 | #define RESOLVER_COMMON_VOID \ | - |
1629 | RESOLVER_COMMON \ | - |
1630 | \ | - |
1631 | if (!(funcs->*funcPointerName)) { \ | - |
1632 | if (fallbackFuncPointer) { \ | - |
1633 | funcs->*funcPointerName = fallbackFuncPointer; \ | - |
1634 | } else { \ | - |
1635 | funcs->*funcPointerName = old; \ | - |
1636 | return; \ | - |
1637 | } \ | - |
1638 | } | - |
1639 | | - |
1640 | template <typename Base, typename FuncType, int Policy, typename ReturnType> | - |
1641 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()() | - |
1642 | { | - |
1643 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1644 | | - |
1645 | return (funcs->*funcPointerName)(); never executed: return (funcs->*funcPointerName)(); | 0 |
1646 | } | - |
1647 | | - |
1648 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1> | - |
1649 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1) | - |
1650 | { | - |
1651 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1652 | | - |
1653 | return (funcs->*funcPointerName)(p1); never executed: return (funcs->*funcPointerName)(p1); | 0 |
1654 | } | - |
1655 | | - |
1656 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2> | - |
1657 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2) | - |
1658 | { | - |
1659 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1660 | | - |
1661 | return (funcs->*funcPointerName)(p1, p2); never executed: return (funcs->*funcPointerName)(p1, p2); | 0 |
1662 | } | - |
1663 | | - |
1664 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2, typename P3> | - |
1665 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2, P3 p3) | - |
1666 | { | - |
1667 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1668 | | - |
1669 | return (funcs->*funcPointerName)(p1, p2, p3); never executed: return (funcs->*funcPointerName)(p1, p2, p3); | 0 |
1670 | } | - |
1671 | | - |
1672 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2, typename P3, typename P4> | - |
1673 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2, P3 p3, P4 p4) | - |
1674 | { | - |
1675 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1676 | | - |
1677 | return (funcs->*funcPointerName)(p1, p2, p3, p4); never executed: return (funcs->*funcPointerName)(p1, p2, p3, p4); | 0 |
1678 | } | - |
1679 | | - |
1680 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2, typename P3, typename P4, typename P5> | - |
1681 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5) | - |
1682 | { | - |
1683 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1684 | | - |
1685 | return (funcs->*funcPointerName)(p1, p2, p3, p4, p5); never executed: return (funcs->*funcPointerName)(p1, p2, p3, p4, p5); | 0 |
1686 | } | - |
1687 | | - |
1688 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6> | - |
1689 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6) | - |
1690 | { | - |
1691 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1692 | | - |
1693 | return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6); never executed: return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6); | 0 |
1694 | } | - |
1695 | | - |
1696 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7> | - |
1697 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7) | - |
1698 | { | - |
1699 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1700 | | - |
1701 | return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7); never executed: return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7); | 0 |
1702 | } | - |
1703 | | - |
1704 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8> | - |
1705 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8) | - |
1706 | { | - |
1707 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1708 | | - |
1709 | return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8); never executed: return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8); | 0 |
1710 | } | - |
1711 | | - |
1712 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9> | - |
1713 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9) | - |
1714 | { | - |
1715 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1716 | | - |
1717 | return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8, p9); never executed: return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8, p9); | 0 |
1718 | } | - |
1719 | | - |
1720 | template <typename Base, typename FuncType, int Policy, typename ReturnType> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10> | - |
1721 | ReturnType Resolver<Base, FuncType, Policy, ReturnType>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10) | - |
1722 | { | - |
1723 | RESOLVER_COMMON_NON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return ReturnType(); never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1724 | | - |
1725 | return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); never executed: return (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); | 0 |
1726 | } | - |
1727 | | - |
1728 | template <typename Base, typename FuncType, int Policy> | - |
1729 | void Resolver<Base, FuncType, Policy, void>::operator()() | - |
1730 | { | - |
1731 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1732 | | - |
1733 | (funcs->*funcPointerName)(); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(); | - |
1734 | } | 0 |
1735 | | - |
1736 | template <typename Base, typename FuncType, int Policy> template <typename P1> | - |
1737 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1) | - |
1738 | { | - |
1739 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1740 | | - |
1741 | (funcs->*funcPointerName)(p1); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1); | - |
1742 | } | 0 |
1743 | | - |
1744 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2> | - |
1745 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2) | - |
1746 | { | - |
1747 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1748 | | - |
1749 | (funcs->*funcPointerName)(p1, p2); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2); | - |
1750 | } | 0 |
1751 | | - |
1752 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2, typename P3> | - |
1753 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2, P3 p3) | - |
1754 | { | - |
1755 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1756 | | - |
1757 | (funcs->*funcPointerName)(p1, p2, p3); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2, p3); | - |
1758 | } | 0 |
1759 | | - |
1760 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2, typename P3, typename P4> | - |
1761 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2, P3 p3, P4 p4) | - |
1762 | { | - |
1763 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1764 | | - |
1765 | (funcs->*funcPointerName)(p1, p2, p3, p4); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2, p3, p4); | - |
1766 | } | 0 |
1767 | | - |
1768 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2, typename P3, typename P4, typename P5> | - |
1769 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5) | - |
1770 | { | - |
1771 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1772 | | - |
1773 | (funcs->*funcPointerName)(p1, p2, p3, p4, p5); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2, p3, p4, p5); | - |
1774 | } | 0 |
1775 | | - |
1776 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6> | - |
1777 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6) | - |
1778 | { | - |
1779 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1780 | | - |
1781 | (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6); | - |
1782 | } | 0 |
1783 | | - |
1784 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7> | - |
1785 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7) | - |
1786 | { | - |
1787 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1788 | | - |
1789 | (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7); | - |
1790 | } | 0 |
1791 | | - |
1792 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8> | - |
1793 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8) | - |
1794 | { | - |
1795 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1796 | | - |
1797 | (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8); | - |
1798 | } | 0 |
1799 | | - |
1800 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9> | - |
1801 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9) | - |
1802 | { | - |
1803 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1804 | | - |
1805 | (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8, p9); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8, p9); | - |
1806 | } | 0 |
1807 | | - |
1808 | template <typename Base, typename FuncType, int Policy> template <typename P1, typename P2, typename P3, typename P4, typename P5, typename P6, typename P7, typename P8, typename P9, typename P10> | - |
1809 | void Resolver<Base, FuncType, Policy, void>::operator()(P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10) | - |
1810 | { | - |
1811 | RESOLVER_COMMON_VOID never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(funcName + "EXT"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "OES"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "ARB"); never executed: funcs->*funcPointerName = (FuncType)context->getProcAddress(alternateFuncName + "EXT"); never executed: } never executed: } never executed: return; never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: !(funcs->*funcPointerName) never evaluated: fallbackFuncPointer never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) never evaluated: !alternateFuncName.isEmpty() never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveOES) never evaluated: !(funcs->*funcPointerName) never evaluated: (Policy & ResolveEXT) never evaluated: !(funcs->*funcPointerName) | 0 |
1812 | | - |
1813 | (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); never executed (the execution status of this line is deduced): (funcs->*funcPointerName)(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10); | - |
1814 | } | 0 |
1815 | | - |
1816 | template <typename ReturnType, int Policy, typename Base, typename FuncType> | - |
1817 | Resolver<Base, FuncType, Policy, ReturnType> functionResolverWithFallback(FuncType Base::*func, FuncType fallback, const char *name, const char *alternate = 0) | - |
1818 | { | - |
1819 | return Resolver<Base, FuncType, Policy, ReturnType>(func, fallback, name, alternate); never executed: return Resolver<Base, FuncType, Policy, ReturnType>(func, fallback, name, alternate); | 0 |
1820 | } | - |
1821 | | - |
1822 | template <typename ReturnType, int Policy, typename Base, typename FuncType> | - |
1823 | Resolver<Base, FuncType, Policy, ReturnType> functionResolver(FuncType Base::*func, const char *name, const char *alternate = 0) | - |
1824 | { | - |
1825 | return Resolver<Base, FuncType, Policy, ReturnType>(func, 0, name, alternate); never executed: return Resolver<Base, FuncType, Policy, ReturnType>(func, 0, name, alternate); | 0 |
1826 | } | - |
1827 | | - |
1828 | } | - |
1829 | | - |
1830 | #define RESOLVE_FUNC(RETURN_TYPE, POLICY, NAME) \ | - |
1831 | return functionResolver<RETURN_TYPE, POLICY>(&QOpenGLExtensionsPrivate::NAME, "gl" #NAME) | - |
1832 | | - |
1833 | #define RESOLVE_FUNC_VOID(POLICY, NAME) \ | - |
1834 | functionResolver<void, POLICY>(&QOpenGLExtensionsPrivate::NAME, "gl" #NAME) | - |
1835 | | - |
1836 | #define RESOLVE_FUNC_SPECIAL(RETURN_TYPE, POLICY, NAME) \ | - |
1837 | return functionResolverWithFallback<RETURN_TYPE, POLICY>(&QOpenGLExtensionsPrivate::NAME, qopenglfSpecial##NAME, "gl" #NAME) | - |
1838 | | - |
1839 | #define RESOLVE_FUNC_SPECIAL_VOID(POLICY, NAME) \ | - |
1840 | functionResolverWithFallback<void, POLICY>(&QOpenGLExtensionsPrivate::NAME, qopenglfSpecial##NAME, "gl" #NAME) | - |
1841 | | - |
1842 | #define RESOLVE_FUNC_WITH_ALTERNATE(RETURN_TYPE, POLICY, NAME, ALTERNATE) \ | - |
1843 | return functionResolver<RETURN_TYPE, POLICY>(&QOpenGLExtensionsPrivate::NAME, "gl" #NAME, "gl" #ALTERNATE) | - |
1844 | | - |
1845 | #define RESOLVE_FUNC_VOID_WITH_ALTERNATE(POLICY, NAME, ALTERNATE) \ | - |
1846 | functionResolver<void, POLICY>(&QOpenGLExtensionsPrivate::NAME, "gl" #NAME, "gl" #ALTERNATE) | - |
1847 | | - |
1848 | #ifndef QT_OPENGL_ES_2 | - |
1849 | | - |
1850 | static void QOPENGLF_APIENTRY qopenglfResolveActiveTexture(GLenum texture) | - |
1851 | { | - |
1852 | RESOLVE_FUNC_VOID(0, ActiveTexture)(texture); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::ActiveTexture, "gl" "ActiveTexture")(texture); | - |
1853 | } | 0 |
1854 | | - |
1855 | static void QOPENGLF_APIENTRY qopenglfResolveAttachShader(GLuint program, GLuint shader) | - |
1856 | { | - |
1857 | RESOLVE_FUNC_VOID_WITH_ALTERNATE(0, AttachShader, AttachObject)(program, shader); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::AttachShader, "gl" "AttachShader", "gl" "AttachObject")(program, shader); | - |
1858 | } | 0 |
1859 | | - |
1860 | static void QOPENGLF_APIENTRY qopenglfResolveBindAttribLocation(GLuint program, GLuint index, const char* name) | - |
1861 | { | - |
1862 | RESOLVE_FUNC_VOID(0, BindAttribLocation)(program, index, name); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::BindAttribLocation, "gl" "BindAttribLocation")(program, index, name); | - |
1863 | } | 0 |
1864 | | - |
1865 | static void QOPENGLF_APIENTRY qopenglfResolveBindBuffer(GLenum target, GLuint buffer) | - |
1866 | { | - |
1867 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BindBuffer)(target, buffer); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BindBuffer, "gl" "BindBuffer")(target, buffer); | - |
1868 | } | 0 |
1869 | | - |
1870 | static void QOPENGLF_APIENTRY qopenglfResolveBindFramebuffer(GLenum target, GLuint framebuffer) | - |
1871 | { | - |
1872 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BindFramebuffer)(target, framebuffer); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BindFramebuffer, "gl" "BindFramebuffer")(target, framebuffer); | - |
1873 | } | 0 |
1874 | | - |
1875 | static void QOPENGLF_APIENTRY qopenglfResolveBindRenderbuffer(GLenum target, GLuint renderbuffer) | - |
1876 | { | - |
1877 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BindRenderbuffer)(target, renderbuffer); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BindRenderbuffer, "gl" "BindRenderbuffer")(target, renderbuffer); | - |
1878 | } | 0 |
1879 | | - |
1880 | static void QOPENGLF_APIENTRY qopenglfResolveBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) | - |
1881 | { | - |
1882 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BlendColor)(red, green, blue, alpha); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BlendColor, "gl" "BlendColor")(red, green, blue, alpha); | - |
1883 | } | 0 |
1884 | | - |
1885 | static void QOPENGLF_APIENTRY qopenglfResolveBlendEquation(GLenum mode) | - |
1886 | { | - |
1887 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BlendEquation)(mode); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BlendEquation, "gl" "BlendEquation")(mode); | - |
1888 | } | 0 |
1889 | | - |
1890 | static void QOPENGLF_APIENTRY qopenglfResolveBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) | - |
1891 | { | - |
1892 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BlendEquationSeparate)(modeRGB, modeAlpha); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BlendEquationSeparate, "gl" "BlendEquationSeparate")(modeRGB, modeAlpha); | - |
1893 | } | 0 |
1894 | | - |
1895 | static void QOPENGLF_APIENTRY qopenglfResolveBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) | - |
1896 | { | - |
1897 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BlendFuncSeparate)(srcRGB, dstRGB, srcAlpha, dstAlpha); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BlendFuncSeparate, "gl" "BlendFuncSeparate")(srcRGB, dstRGB, srcAlpha, dstAlpha); | - |
1898 | } | 0 |
1899 | | - |
1900 | static void QOPENGLF_APIENTRY qopenglfResolveBufferData(GLenum target, qopengl_GLsizeiptr size, const void* data, GLenum usage) | - |
1901 | { | - |
1902 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BufferData)(target, size, data, usage); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BufferData, "gl" "BufferData")(target, size, data, usage); | - |
1903 | } | 0 |
1904 | | - |
1905 | static void QOPENGLF_APIENTRY qopenglfResolveBufferSubData(GLenum target, qopengl_GLintptr offset, qopengl_GLsizeiptr size, const void* data) | - |
1906 | { | - |
1907 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, BufferSubData)(target, offset, size, data); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::BufferSubData, "gl" "BufferSubData")(target, offset, size, data); | - |
1908 | } | 0 |
1909 | | - |
1910 | static GLenum QOPENGLF_APIENTRY qopenglfResolveCheckFramebufferStatus(GLenum target) | - |
1911 | { | - |
1912 | RESOLVE_FUNC(GLenum, ResolveOES | ResolveEXT, CheckFramebufferStatus)(target); never executed: return functionResolver<GLenum, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::CheckFramebufferStatus, "gl" "CheckFramebufferStatus")(target); | 0 |
1913 | } | - |
1914 | | - |
1915 | static void QOPENGLF_APIENTRY qopenglfResolveCompileShader(GLuint shader) | - |
1916 | { | - |
1917 | RESOLVE_FUNC_VOID(0, CompileShader)(shader); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::CompileShader, "gl" "CompileShader")(shader); | - |
1918 | } | 0 |
1919 | | - |
1920 | static void QOPENGLF_APIENTRY qopenglfResolveCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data) | - |
1921 | { | - |
1922 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, CompressedTexImage2D)(target, level, internalformat, width, height, border, imageSize, data); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::CompressedTexImage2D, "gl" "CompressedTexImage2D")(target, level, internalformat, width, height, border, imageSize, data); | - |
1923 | } | 0 |
1924 | | - |
1925 | static void QOPENGLF_APIENTRY qopenglfResolveCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data) | - |
1926 | { | - |
1927 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, CompressedTexSubImage2D)(target, level, xoffset, yoffset, width, height, format, imageSize, data); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::CompressedTexSubImage2D, "gl" "CompressedTexSubImage2D")(target, level, xoffset, yoffset, width, height, format, imageSize, data); | - |
1928 | } | 0 |
1929 | | - |
1930 | static GLuint QOPENGLF_APIENTRY qopenglfResolveCreateProgram() | - |
1931 | { | - |
1932 | RESOLVE_FUNC_WITH_ALTERNATE(GLuint, 0, CreateProgram, CreateProgramObject)(); never executed: return functionResolver<GLuint, 0>(&QOpenGLExtensionsPrivate::CreateProgram, "gl" "CreateProgram", "gl" "CreateProgramObject")(); | 0 |
1933 | } | - |
1934 | | - |
1935 | static GLuint QOPENGLF_APIENTRY qopenglfResolveCreateShader(GLenum type) | - |
1936 | { | - |
1937 | RESOLVE_FUNC_WITH_ALTERNATE(GLuint, 0, CreateShader, CreateShaderObject)(type); never executed: return functionResolver<GLuint, 0>(&QOpenGLExtensionsPrivate::CreateShader, "gl" "CreateShader", "gl" "CreateShaderObject")(type); | 0 |
1938 | } | - |
1939 | | - |
1940 | static void QOPENGLF_APIENTRY qopenglfResolveDeleteBuffers(GLsizei n, const GLuint* buffers) | - |
1941 | { | - |
1942 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, DeleteBuffers)(n, buffers); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::DeleteBuffers, "gl" "DeleteBuffers")(n, buffers); | - |
1943 | } | 0 |
1944 | | - |
1945 | static void QOPENGLF_APIENTRY qopenglfResolveDeleteFramebuffers(GLsizei n, const GLuint* framebuffers) | - |
1946 | { | - |
1947 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, DeleteFramebuffers)(n, framebuffers); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::DeleteFramebuffers, "gl" "DeleteFramebuffers")(n, framebuffers); | - |
1948 | } | 0 |
1949 | | - |
1950 | static void QOPENGLF_APIENTRY qopenglfResolveDeleteProgram(GLuint program) | - |
1951 | { | - |
1952 | RESOLVE_FUNC_VOID(0, DeleteProgram)(program); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::DeleteProgram, "gl" "DeleteProgram")(program); | - |
1953 | } | 0 |
1954 | | - |
1955 | static void QOPENGLF_APIENTRY qopenglfResolveDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers) | - |
1956 | { | - |
1957 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, DeleteRenderbuffers)(n, renderbuffers); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::DeleteRenderbuffers, "gl" "DeleteRenderbuffers")(n, renderbuffers); | - |
1958 | } | 0 |
1959 | | - |
1960 | static void QOPENGLF_APIENTRY qopenglfResolveDeleteShader(GLuint shader) | - |
1961 | { | - |
1962 | RESOLVE_FUNC_VOID_WITH_ALTERNATE(0, DeleteShader, DeleteObject)(shader); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::DeleteShader, "gl" "DeleteShader", "gl" "DeleteObject")(shader); | - |
1963 | } | 0 |
1964 | | - |
1965 | static void QOPENGLF_APIENTRY qopenglfResolveDetachShader(GLuint program, GLuint shader) | - |
1966 | { | - |
1967 | RESOLVE_FUNC_VOID_WITH_ALTERNATE(0, DetachShader, DetachObject)(program, shader); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::DetachShader, "gl" "DetachShader", "gl" "DetachObject")(program, shader); | - |
1968 | } | 0 |
1969 | | - |
1970 | static void QOPENGLF_APIENTRY qopenglfResolveDisableVertexAttribArray(GLuint index) | - |
1971 | { | - |
1972 | RESOLVE_FUNC_VOID(0, DisableVertexAttribArray)(index); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::DisableVertexAttribArray, "gl" "DisableVertexAttribArray")(index); | - |
1973 | } | 0 |
1974 | | - |
1975 | static void QOPENGLF_APIENTRY qopenglfResolveEnableVertexAttribArray(GLuint index) | - |
1976 | { | - |
1977 | RESOLVE_FUNC_VOID(0, EnableVertexAttribArray)(index); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::EnableVertexAttribArray, "gl" "EnableVertexAttribArray")(index); | - |
1978 | } | 0 |
1979 | | - |
1980 | static void QOPENGLF_APIENTRY qopenglfResolveFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) | - |
1981 | { | - |
1982 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, FramebufferRenderbuffer)(target, attachment, renderbuffertarget, renderbuffer); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::FramebufferRenderbuffer, "gl" "FramebufferRenderbuffer")(target, attachment, renderbuffertarget, renderbuffer); | - |
1983 | } | 0 |
1984 | | - |
1985 | static void QOPENGLF_APIENTRY qopenglfResolveFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) | - |
1986 | { | - |
1987 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, FramebufferTexture2D)(target, attachment, textarget, texture, level); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::FramebufferTexture2D, "gl" "FramebufferTexture2D")(target, attachment, textarget, texture, level); | - |
1988 | } | 0 |
1989 | | - |
1990 | static void QOPENGLF_APIENTRY qopenglfResolveGenBuffers(GLsizei n, GLuint* buffers) | - |
1991 | { | - |
1992 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, GenBuffers)(n, buffers); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::GenBuffers, "gl" "GenBuffers")(n, buffers); | - |
1993 | } | 0 |
1994 | | - |
1995 | static void QOPENGLF_APIENTRY qopenglfResolveGenerateMipmap(GLenum target) | - |
1996 | { | - |
1997 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, GenerateMipmap)(target); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::GenerateMipmap, "gl" "GenerateMipmap")(target); | - |
1998 | } | 0 |
1999 | | - |
2000 | static void QOPENGLF_APIENTRY qopenglfResolveGenFramebuffers(GLsizei n, GLuint* framebuffers) | - |
2001 | { | - |
2002 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, GenFramebuffers)(n, framebuffers); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::GenFramebuffers, "gl" "GenFramebuffers")(n, framebuffers); | - |
2003 | } | 0 |
2004 | | - |
2005 | static void QOPENGLF_APIENTRY qopenglfResolveGenRenderbuffers(GLsizei n, GLuint* renderbuffers) | - |
2006 | { | - |
2007 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, GenRenderbuffers)(n, renderbuffers); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::GenRenderbuffers, "gl" "GenRenderbuffers")(n, renderbuffers); | - |
2008 | } | 0 |
2009 | | - |
2010 | static void QOPENGLF_APIENTRY qopenglfResolveGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) | - |
2011 | { | - |
2012 | RESOLVE_FUNC_VOID(0, GetActiveAttrib)(program, index, bufsize, length, size, type, name); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetActiveAttrib, "gl" "GetActiveAttrib")(program, index, bufsize, length, size, type, name); | - |
2013 | } | 0 |
2014 | | - |
2015 | static void QOPENGLF_APIENTRY qopenglfResolveGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) | - |
2016 | { | - |
2017 | RESOLVE_FUNC_VOID(0, GetActiveUniform)(program, index, bufsize, length, size, type, name); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetActiveUniform, "gl" "GetActiveUniform")(program, index, bufsize, length, size, type, name); | - |
2018 | } | 0 |
2019 | | - |
2020 | static void QOPENGLF_APIENTRY qopenglfResolveGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders) | - |
2021 | { | - |
2022 | RESOLVE_FUNC_VOID_WITH_ALTERNATE(0, GetAttachedShaders, GetAttachedObjects)(program, maxcount, count, shaders); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetAttachedShaders, "gl" "GetAttachedShaders", "gl" "GetAttachedObjects")(program, maxcount, count, shaders); | - |
2023 | } | 0 |
2024 | | - |
2025 | static GLint QOPENGLF_APIENTRY qopenglfResolveGetAttribLocation(GLuint program, const char* name) | - |
2026 | { | - |
2027 | RESOLVE_FUNC(GLint, 0, GetAttribLocation)(program, name); never executed: return functionResolver<GLint, 0>(&QOpenGLExtensionsPrivate::GetAttribLocation, "gl" "GetAttribLocation")(program, name); | 0 |
2028 | } | - |
2029 | | - |
2030 | static void QOPENGLF_APIENTRY qopenglfResolveGetBufferParameteriv(GLenum target, GLenum pname, GLint* params) | - |
2031 | { | - |
2032 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, GetBufferParameteriv)(target, pname, params); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::GetBufferParameteriv, "gl" "GetBufferParameteriv")(target, pname, params); | - |
2033 | } | 0 |
2034 | | - |
2035 | static void QOPENGLF_APIENTRY qopenglfResolveGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params) | - |
2036 | { | - |
2037 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, GetFramebufferAttachmentParameteriv)(target, attachment, pname, params); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::GetFramebufferAttachmentParameteriv, "gl" "GetFramebufferAttachmentParameteriv")(target, attachment, pname, params); | - |
2038 | } | 0 |
2039 | | - |
2040 | static void QOPENGLF_APIENTRY qopenglfResolveGetProgramiv(GLuint program, GLenum pname, GLint* params) | - |
2041 | { | - |
2042 | RESOLVE_FUNC_VOID_WITH_ALTERNATE(0, GetProgramiv, GetObjectParameteriv)(program, pname, params); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetProgramiv, "gl" "GetProgramiv", "gl" "GetObjectParameteriv")(program, pname, params); | - |
2043 | } | 0 |
2044 | | - |
2045 | static void QOPENGLF_APIENTRY qopenglfResolveGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, char* infolog) | - |
2046 | { | - |
2047 | RESOLVE_FUNC_VOID_WITH_ALTERNATE(0, GetProgramInfoLog, GetInfoLog)(program, bufsize, length, infolog); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetProgramInfoLog, "gl" "GetProgramInfoLog", "gl" "GetInfoLog")(program, bufsize, length, infolog); | - |
2048 | } | 0 |
2049 | | - |
2050 | static void QOPENGLF_APIENTRY qopenglfResolveGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params) | - |
2051 | { | - |
2052 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, GetRenderbufferParameteriv)(target, pname, params); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::GetRenderbufferParameteriv, "gl" "GetRenderbufferParameteriv")(target, pname, params); | - |
2053 | } | 0 |
2054 | | - |
2055 | static void QOPENGLF_APIENTRY qopenglfResolveGetShaderiv(GLuint shader, GLenum pname, GLint* params) | - |
2056 | { | - |
2057 | RESOLVE_FUNC_VOID_WITH_ALTERNATE(0, GetShaderiv, GetObjectParameteriv)(shader, pname, params); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetShaderiv, "gl" "GetShaderiv", "gl" "GetObjectParameteriv")(shader, pname, params); | - |
2058 | } | 0 |
2059 | | - |
2060 | static void QOPENGLF_APIENTRY qopenglfResolveGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog) | - |
2061 | { | - |
2062 | RESOLVE_FUNC_VOID_WITH_ALTERNATE(0, GetShaderInfoLog, GetInfoLog)(shader, bufsize, length, infolog); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetShaderInfoLog, "gl" "GetShaderInfoLog", "gl" "GetInfoLog")(shader, bufsize, length, infolog); | - |
2063 | } | 0 |
2064 | | - |
2065 | static void QOPENGLF_APIENTRY qopenglfSpecialGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) | - |
2066 | { | - |
2067 | Q_UNUSED(shadertype); never executed (the execution status of this line is deduced): (void)shadertype;; | - |
2068 | Q_UNUSED(precisiontype); never executed (the execution status of this line is deduced): (void)precisiontype;; | - |
2069 | range[0] = range[1] = precision[0] = 0; never executed (the execution status of this line is deduced): range[0] = range[1] = precision[0] = 0; | - |
2070 | } | 0 |
2071 | | - |
2072 | static void QOPENGLF_APIENTRY qopenglfResolveGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) | - |
2073 | { | - |
2074 | RESOLVE_FUNC_SPECIAL_VOID(ResolveOES | ResolveEXT, GetShaderPrecisionFormat)(shadertype, precisiontype, range, precision); never executed (the execution status of this line is deduced): functionResolverWithFallback<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::GetShaderPrecisionFormat, qopenglfSpecialGetShaderPrecisionFormat, "gl" "GetShaderPrecisionFormat")(shadertype, precisiontype, range, precision); | - |
2075 | } | 0 |
2076 | | - |
2077 | static void QOPENGLF_APIENTRY qopenglfResolveGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, char* source) | - |
2078 | { | - |
2079 | RESOLVE_FUNC_VOID(0, GetShaderSource)(shader, bufsize, length, source); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetShaderSource, "gl" "GetShaderSource")(shader, bufsize, length, source); | - |
2080 | } | 0 |
2081 | | - |
2082 | static void QOPENGLF_APIENTRY qopenglfResolveGetUniformfv(GLuint program, GLint location, GLfloat* params) | - |
2083 | { | - |
2084 | RESOLVE_FUNC_VOID(0, GetUniformfv)(program, location, params); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetUniformfv, "gl" "GetUniformfv")(program, location, params); | - |
2085 | } | 0 |
2086 | | - |
2087 | static void QOPENGLF_APIENTRY qopenglfResolveGetUniformiv(GLuint program, GLint location, GLint* params) | - |
2088 | { | - |
2089 | RESOLVE_FUNC_VOID(0, GetUniformiv)(program, location, params); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetUniformiv, "gl" "GetUniformiv")(program, location, params); | - |
2090 | } | 0 |
2091 | | - |
2092 | static GLint QOPENGLF_APIENTRY qopenglfResolveGetUniformLocation(GLuint program, const char* name) | - |
2093 | { | - |
2094 | RESOLVE_FUNC(GLint, 0, GetUniformLocation)(program, name); never executed: return functionResolver<GLint, 0>(&QOpenGLExtensionsPrivate::GetUniformLocation, "gl" "GetUniformLocation")(program, name); | 0 |
2095 | } | - |
2096 | | - |
2097 | static void QOPENGLF_APIENTRY qopenglfResolveGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params) | - |
2098 | { | - |
2099 | RESOLVE_FUNC_VOID(0, GetVertexAttribfv)(index, pname, params); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetVertexAttribfv, "gl" "GetVertexAttribfv")(index, pname, params); | - |
2100 | } | 0 |
2101 | | - |
2102 | static void QOPENGLF_APIENTRY qopenglfResolveGetVertexAttribiv(GLuint index, GLenum pname, GLint* params) | - |
2103 | { | - |
2104 | RESOLVE_FUNC_VOID(0, GetVertexAttribiv)(index, pname, params); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetVertexAttribiv, "gl" "GetVertexAttribiv")(index, pname, params); | - |
2105 | } | 0 |
2106 | | - |
2107 | static void QOPENGLF_APIENTRY qopenglfResolveGetVertexAttribPointerv(GLuint index, GLenum pname, void** pointer) | - |
2108 | { | - |
2109 | RESOLVE_FUNC_VOID(0, GetVertexAttribPointerv)(index, pname, pointer); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::GetVertexAttribPointerv, "gl" "GetVertexAttribPointerv")(index, pname, pointer); | - |
2110 | } | 0 |
2111 | | - |
2112 | static GLboolean QOPENGLF_APIENTRY qopenglfResolveIsBuffer(GLuint buffer) | - |
2113 | { | - |
2114 | RESOLVE_FUNC(GLboolean, ResolveOES | ResolveEXT, IsBuffer)(buffer); never executed: return functionResolver<GLboolean, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::IsBuffer, "gl" "IsBuffer")(buffer); | 0 |
2115 | } | - |
2116 | | - |
2117 | static GLboolean QOPENGLF_APIENTRY qopenglfResolveIsFramebuffer(GLuint framebuffer) | - |
2118 | { | - |
2119 | RESOLVE_FUNC(GLboolean, ResolveOES | ResolveEXT, IsFramebuffer)(framebuffer); never executed: return functionResolver<GLboolean, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::IsFramebuffer, "gl" "IsFramebuffer")(framebuffer); | 0 |
2120 | } | - |
2121 | | - |
2122 | static GLboolean QOPENGLF_APIENTRY qopenglfSpecialIsProgram(GLuint program) | - |
2123 | { | - |
2124 | return program != 0; never executed: return program != 0; | 0 |
2125 | } | - |
2126 | | - |
2127 | static GLboolean QOPENGLF_APIENTRY qopenglfResolveIsProgram(GLuint program) | - |
2128 | { | - |
2129 | RESOLVE_FUNC_SPECIAL(GLboolean, 0, IsProgram)(program); never executed: return functionResolverWithFallback<GLboolean, 0>(&QOpenGLExtensionsPrivate::IsProgram, qopenglfSpecialIsProgram, "gl" "IsProgram")(program); | 0 |
2130 | } | - |
2131 | | - |
2132 | static GLboolean QOPENGLF_APIENTRY qopenglfResolveIsRenderbuffer(GLuint renderbuffer) | - |
2133 | { | - |
2134 | RESOLVE_FUNC(GLboolean, ResolveOES | ResolveEXT, IsRenderbuffer)(renderbuffer); never executed: return functionResolver<GLboolean, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::IsRenderbuffer, "gl" "IsRenderbuffer")(renderbuffer); | 0 |
2135 | } | - |
2136 | | - |
2137 | static GLboolean QOPENGLF_APIENTRY qopenglfSpecialIsShader(GLuint shader) | - |
2138 | { | - |
2139 | return shader != 0; never executed: return shader != 0; | 0 |
2140 | } | - |
2141 | | - |
2142 | static GLboolean QOPENGLF_APIENTRY qopenglfResolveIsShader(GLuint shader) | - |
2143 | { | - |
2144 | RESOLVE_FUNC_SPECIAL(GLboolean, 0, IsShader)(shader); never executed: return functionResolverWithFallback<GLboolean, 0>(&QOpenGLExtensionsPrivate::IsShader, qopenglfSpecialIsShader, "gl" "IsShader")(shader); | 0 |
2145 | } | - |
2146 | | - |
2147 | static void QOPENGLF_APIENTRY qopenglfResolveLinkProgram(GLuint program) | - |
2148 | { | - |
2149 | RESOLVE_FUNC_VOID(0, LinkProgram)(program); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::LinkProgram, "gl" "LinkProgram")(program); | - |
2150 | } | 0 |
2151 | | - |
2152 | static void QOPENGLF_APIENTRY qopenglfSpecialReleaseShaderCompiler() | - |
2153 | { | - |
2154 | } | - |
2155 | | - |
2156 | static void QOPENGLF_APIENTRY qopenglfResolveReleaseShaderCompiler() | - |
2157 | { | - |
2158 | RESOLVE_FUNC_SPECIAL_VOID(0, ReleaseShaderCompiler)(); never executed (the execution status of this line is deduced): functionResolverWithFallback<void, 0>(&QOpenGLExtensionsPrivate::ReleaseShaderCompiler, qopenglfSpecialReleaseShaderCompiler, "gl" "ReleaseShaderCompiler")(); | - |
2159 | } | 0 |
2160 | | - |
2161 | static void QOPENGLF_APIENTRY qopenglfResolveRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) | - |
2162 | { | - |
2163 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, RenderbufferStorage)(target, internalformat, width, height); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::RenderbufferStorage, "gl" "RenderbufferStorage")(target, internalformat, width, height); | - |
2164 | } | 0 |
2165 | | - |
2166 | static void QOPENGLF_APIENTRY qopenglfResolveSampleCoverage(GLclampf value, GLboolean invert) | - |
2167 | { | - |
2168 | RESOLVE_FUNC_VOID(ResolveOES | ResolveEXT, SampleCoverage)(value, invert); never executed (the execution status of this line is deduced): functionResolver<void, ResolveOES | ResolveEXT>(&QOpenGLExtensionsPrivate::SampleCoverage, "gl" "SampleCoverage")(value, invert); | - |
2169 | } | 0 |
2170 | | - |
2171 | static void QOPENGLF_APIENTRY qopenglfResolveShaderBinary(GLint n, const GLuint* shaders, GLenum binaryformat, const void* binary, GLint length) | - |
2172 | { | - |
2173 | RESOLVE_FUNC_VOID(0, ShaderBinary)(n, shaders, binaryformat, binary, length); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::ShaderBinary, "gl" "ShaderBinary")(n, shaders, binaryformat, binary, length); | - |
2174 | } | 0 |
2175 | | - |
2176 | static void QOPENGLF_APIENTRY qopenglfResolveShaderSource(GLuint shader, GLsizei count, const char** string, const GLint* length) | - |
2177 | { | - |
2178 | RESOLVE_FUNC_VOID(0, ShaderSource)(shader, count, string, length); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::ShaderSource, "gl" "ShaderSource")(shader, count, string, length); | - |
2179 | } | 0 |
2180 | | - |
2181 | static void QOPENGLF_APIENTRY qopenglfResolveStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) | - |
2182 | { | - |
2183 | RESOLVE_FUNC_VOID(ResolveEXT, StencilFuncSeparate)(face, func, ref, mask); never executed (the execution status of this line is deduced): functionResolver<void, ResolveEXT>(&QOpenGLExtensionsPrivate::StencilFuncSeparate, "gl" "StencilFuncSeparate")(face, func, ref, mask); | - |
2184 | } | 0 |
2185 | | - |
2186 | static void QOPENGLF_APIENTRY qopenglfResolveStencilMaskSeparate(GLenum face, GLuint mask) | - |
2187 | { | - |
2188 | RESOLVE_FUNC_VOID(ResolveEXT, StencilMaskSeparate)(face, mask); never executed (the execution status of this line is deduced): functionResolver<void, ResolveEXT>(&QOpenGLExtensionsPrivate::StencilMaskSeparate, "gl" "StencilMaskSeparate")(face, mask); | - |
2189 | } | 0 |
2190 | | - |
2191 | static void QOPENGLF_APIENTRY qopenglfResolveStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass) | - |
2192 | { | - |
2193 | RESOLVE_FUNC_VOID(ResolveEXT, StencilOpSeparate)(face, fail, zfail, zpass); never executed (the execution status of this line is deduced): functionResolver<void, ResolveEXT>(&QOpenGLExtensionsPrivate::StencilOpSeparate, "gl" "StencilOpSeparate")(face, fail, zfail, zpass); | - |
2194 | } | 0 |
2195 | | - |
2196 | static void QOPENGLF_APIENTRY qopenglfResolveUniform1f(GLint location, GLfloat x) | - |
2197 | { | - |
2198 | RESOLVE_FUNC_VOID(0, Uniform1f)(location, x); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform1f, "gl" "Uniform1f")(location, x); | - |
2199 | } | 0 |
2200 | | - |
2201 | static void QOPENGLF_APIENTRY qopenglfResolveUniform1fv(GLint location, GLsizei count, const GLfloat* v) | - |
2202 | { | - |
2203 | RESOLVE_FUNC_VOID(0, Uniform1fv)(location, count, v); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform1fv, "gl" "Uniform1fv")(location, count, v); | - |
2204 | } | 0 |
2205 | | - |
2206 | static void QOPENGLF_APIENTRY qopenglfResolveUniform1i(GLint location, GLint x) | - |
2207 | { | - |
2208 | RESOLVE_FUNC_VOID(0, Uniform1i)(location, x); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform1i, "gl" "Uniform1i")(location, x); | - |
2209 | } | 0 |
2210 | | - |
2211 | static void QOPENGLF_APIENTRY qopenglfResolveUniform1iv(GLint location, GLsizei count, const GLint* v) | - |
2212 | { | - |
2213 | RESOLVE_FUNC_VOID(0, Uniform1iv)(location, count, v); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform1iv, "gl" "Uniform1iv")(location, count, v); | - |
2214 | } | 0 |
2215 | | - |
2216 | static void QOPENGLF_APIENTRY qopenglfResolveUniform2f(GLint location, GLfloat x, GLfloat y) | - |
2217 | { | - |
2218 | RESOLVE_FUNC_VOID(0, Uniform2f)(location, x, y); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform2f, "gl" "Uniform2f")(location, x, y); | - |
2219 | } | 0 |
2220 | | - |
2221 | static void QOPENGLF_APIENTRY qopenglfResolveUniform2fv(GLint location, GLsizei count, const GLfloat* v) | - |
2222 | { | - |
2223 | RESOLVE_FUNC_VOID(0, Uniform2fv)(location, count, v); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform2fv, "gl" "Uniform2fv")(location, count, v); | - |
2224 | } | 0 |
2225 | | - |
2226 | static void QOPENGLF_APIENTRY qopenglfResolveUniform2i(GLint location, GLint x, GLint y) | - |
2227 | { | - |
2228 | RESOLVE_FUNC_VOID(0, Uniform2i)(location, x, y); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform2i, "gl" "Uniform2i")(location, x, y); | - |
2229 | } | 0 |
2230 | | - |
2231 | static void QOPENGLF_APIENTRY qopenglfResolveUniform2iv(GLint location, GLsizei count, const GLint* v) | - |
2232 | { | - |
2233 | RESOLVE_FUNC_VOID(0, Uniform2iv)(location, count, v); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform2iv, "gl" "Uniform2iv")(location, count, v); | - |
2234 | } | 0 |
2235 | | - |
2236 | static void QOPENGLF_APIENTRY qopenglfResolveUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) | - |
2237 | { | - |
2238 | RESOLVE_FUNC_VOID(0, Uniform3f)(location, x, y, z); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform3f, "gl" "Uniform3f")(location, x, y, z); | - |
2239 | } | 0 |
2240 | | - |
2241 | static void QOPENGLF_APIENTRY qopenglfResolveUniform3fv(GLint location, GLsizei count, const GLfloat* v) | - |
2242 | { | - |
2243 | RESOLVE_FUNC_VOID(0, Uniform3fv)(location, count, v); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform3fv, "gl" "Uniform3fv")(location, count, v); | - |
2244 | } | 0 |
2245 | | - |
2246 | static void QOPENGLF_APIENTRY qopenglfResolveUniform3i(GLint location, GLint x, GLint y, GLint z) | - |
2247 | { | - |
2248 | RESOLVE_FUNC_VOID(0, Uniform3i)(location, x, y, z); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform3i, "gl" "Uniform3i")(location, x, y, z); | - |
2249 | } | 0 |
2250 | | - |
2251 | static void QOPENGLF_APIENTRY qopenglfResolveUniform3iv(GLint location, GLsizei count, const GLint* v) | - |
2252 | { | - |
2253 | RESOLVE_FUNC_VOID(0, Uniform3iv)(location, count, v); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform3iv, "gl" "Uniform3iv")(location, count, v); | - |
2254 | } | 0 |
2255 | | - |
2256 | static void QOPENGLF_APIENTRY qopenglfResolveUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) | - |
2257 | { | - |
2258 | RESOLVE_FUNC_VOID(0, Uniform4f)(location, x, y, z, w); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform4f, "gl" "Uniform4f")(location, x, y, z, w); | - |
2259 | } | 0 |
2260 | | - |
2261 | static void QOPENGLF_APIENTRY qopenglfResolveUniform4fv(GLint location, GLsizei count, const GLfloat* v) | - |
2262 | { | - |
2263 | RESOLVE_FUNC_VOID(0, Uniform4fv)(location, count, v); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform4fv, "gl" "Uniform4fv")(location, count, v); | - |
2264 | } | 0 |
2265 | | - |
2266 | static void QOPENGLF_APIENTRY qopenglfResolveUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) | - |
2267 | { | - |
2268 | RESOLVE_FUNC_VOID(0, Uniform4i)(location, x, y, z, w); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform4i, "gl" "Uniform4i")(location, x, y, z, w); | - |
2269 | } | 0 |
2270 | | - |
2271 | static void QOPENGLF_APIENTRY qopenglfResolveUniform4iv(GLint location, GLsizei count, const GLint* v) | - |
2272 | { | - |
2273 | RESOLVE_FUNC_VOID(0, Uniform4iv)(location, count, v); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::Uniform4iv, "gl" "Uniform4iv")(location, count, v); | - |
2274 | } | 0 |
2275 | | - |
2276 | static void QOPENGLF_APIENTRY qopenglfResolveUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) | - |
2277 | { | - |
2278 | RESOLVE_FUNC_VOID(0, UniformMatrix2fv)(location, count, transpose, value); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::UniformMatrix2fv, "gl" "UniformMatrix2fv")(location, count, transpose, value); | - |
2279 | } | 0 |
2280 | | - |
2281 | static void QOPENGLF_APIENTRY qopenglfResolveUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) | - |
2282 | { | - |
2283 | RESOLVE_FUNC_VOID(0, UniformMatrix3fv)(location, count, transpose, value); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::UniformMatrix3fv, "gl" "UniformMatrix3fv")(location, count, transpose, value); | - |
2284 | } | 0 |
2285 | | - |
2286 | static void QOPENGLF_APIENTRY qopenglfResolveUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) | - |
2287 | { | - |
2288 | RESOLVE_FUNC_VOID(0, UniformMatrix4fv)(location, count, transpose, value); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::UniformMatrix4fv, "gl" "UniformMatrix4fv")(location, count, transpose, value); | - |
2289 | } | 0 |
2290 | | - |
2291 | static void QOPENGLF_APIENTRY qopenglfResolveUseProgram(GLuint program) | - |
2292 | { | - |
2293 | RESOLVE_FUNC_VOID(0, UseProgram)(program); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::UseProgram, "gl" "UseProgram")(program); | - |
2294 | } | 0 |
2295 | | - |
2296 | static void QOPENGLF_APIENTRY qopenglfResolveValidateProgram(GLuint program) | - |
2297 | { | - |
2298 | RESOLVE_FUNC_VOID(0, ValidateProgram)(program); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::ValidateProgram, "gl" "ValidateProgram")(program); | - |
2299 | } | 0 |
2300 | | - |
2301 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttrib1f(GLuint indx, GLfloat x) | - |
2302 | { | - |
2303 | RESOLVE_FUNC_VOID(0, VertexAttrib1f)(indx, x); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttrib1f, "gl" "VertexAttrib1f")(indx, x); | - |
2304 | } | 0 |
2305 | | - |
2306 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttrib1fv(GLuint indx, const GLfloat* values) | - |
2307 | { | - |
2308 | RESOLVE_FUNC_VOID(0, VertexAttrib1fv)(indx, values); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttrib1fv, "gl" "VertexAttrib1fv")(indx, values); | - |
2309 | } | 0 |
2310 | | - |
2311 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) | - |
2312 | { | - |
2313 | RESOLVE_FUNC_VOID(0, VertexAttrib2f)(indx, x, y); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttrib2f, "gl" "VertexAttrib2f")(indx, x, y); | - |
2314 | } | 0 |
2315 | | - |
2316 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttrib2fv(GLuint indx, const GLfloat* values) | - |
2317 | { | - |
2318 | RESOLVE_FUNC_VOID(0, VertexAttrib2fv)(indx, values); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttrib2fv, "gl" "VertexAttrib2fv")(indx, values); | - |
2319 | } | 0 |
2320 | | - |
2321 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z) | - |
2322 | { | - |
2323 | RESOLVE_FUNC_VOID(0, VertexAttrib3f)(indx, x, y, z); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttrib3f, "gl" "VertexAttrib3f")(indx, x, y, z); | - |
2324 | } | 0 |
2325 | | - |
2326 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttrib3fv(GLuint indx, const GLfloat* values) | - |
2327 | { | - |
2328 | RESOLVE_FUNC_VOID(0, VertexAttrib3fv)(indx, values); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttrib3fv, "gl" "VertexAttrib3fv")(indx, values); | - |
2329 | } | 0 |
2330 | | - |
2331 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) | - |
2332 | { | - |
2333 | RESOLVE_FUNC_VOID(0, VertexAttrib4f)(indx, x, y, z, w); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttrib4f, "gl" "VertexAttrib4f")(indx, x, y, z, w); | - |
2334 | } | 0 |
2335 | | - |
2336 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttrib4fv(GLuint indx, const GLfloat* values) | - |
2337 | { | - |
2338 | RESOLVE_FUNC_VOID(0, VertexAttrib4fv)(indx, values); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttrib4fv, "gl" "VertexAttrib4fv")(indx, values); | - |
2339 | } | 0 |
2340 | | - |
2341 | static void QOPENGLF_APIENTRY qopenglfResolveVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* ptr) | - |
2342 | { | - |
2343 | RESOLVE_FUNC_VOID(0, VertexAttribPointer)(indx, size, type, normalized, stride, ptr); never executed (the execution status of this line is deduced): functionResolver<void, 0>(&QOpenGLExtensionsPrivate::VertexAttribPointer, "gl" "VertexAttribPointer")(indx, size, type, normalized, stride, ptr); | - |
2344 | } | 0 |
2345 | | - |
2346 | #endif // !QT_OPENGL_ES_2 | - |
2347 | | - |
2348 | static GLvoid *QOPENGLF_APIENTRY qopenglfResolveMapBuffer(GLenum target, GLenum access) | - |
2349 | { | - |
2350 | RESOLVE_FUNC(GLvoid *, ResolveOES, MapBuffer)(target, access); never executed: return functionResolver<GLvoid *, ResolveOES>(&QOpenGLExtensionsPrivate::MapBuffer, "gl" "MapBuffer")(target, access); | 0 |
2351 | } | - |
2352 | | - |
2353 | static GLboolean QOPENGLF_APIENTRY qopenglfResolveUnmapBuffer(GLenum target) | - |
2354 | { | - |
2355 | RESOLVE_FUNC(GLboolean, ResolveOES, UnmapBuffer)(target); never executed: return functionResolver<GLboolean, ResolveOES>(&QOpenGLExtensionsPrivate::UnmapBuffer, "gl" "UnmapBuffer")(target); | 0 |
2356 | } | - |
2357 | | - |
2358 | static void QOPENGLF_APIENTRY qopenglfResolveBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, | - |
2359 | GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, | - |
2360 | GLbitfield mask, GLenum filter) | - |
2361 | { | - |
2362 | RESOLVE_FUNC_VOID(ResolveEXT, BlitFramebuffer) never executed (the execution status of this line is deduced): functionResolver<void, ResolveEXT>(&QOpenGLExtensionsPrivate::BlitFramebuffer, "gl" "BlitFramebuffer") | - |
2363 | (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); never executed (the execution status of this line is deduced): (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); | - |
2364 | } | 0 |
2365 | | - |
2366 | static void QOPENGLF_APIENTRY qopenglfResolveRenderbufferStorageMultisample(GLenum target, GLsizei samples, | - |
2367 | GLenum internalFormat, | - |
2368 | GLsizei width, GLsizei height) | - |
2369 | { | - |
2370 | RESOLVE_FUNC_VOID(ResolveEXT, RenderbufferStorageMultisample) never executed (the execution status of this line is deduced): functionResolver<void, ResolveEXT>(&QOpenGLExtensionsPrivate::RenderbufferStorageMultisample, "gl" "RenderbufferStorageMultisample") | - |
2371 | (target, samples, internalFormat, width, height); never executed (the execution status of this line is deduced): (target, samples, internalFormat, width, height); | - |
2372 | } | 0 |
2373 | | - |
2374 | static void QOPENGLF_APIENTRY qopenglfResolveGetBufferSubData(GLenum target, qopengl_GLintptr offset, qopengl_GLsizeiptr size, GLvoid *data) | - |
2375 | { | - |
2376 | RESOLVE_FUNC_VOID(ResolveEXT, GetBufferSubData) never executed (the execution status of this line is deduced): functionResolver<void, ResolveEXT>(&QOpenGLExtensionsPrivate::GetBufferSubData, "gl" "GetBufferSubData") | - |
2377 | (target, offset, size, data); never executed (the execution status of this line is deduced): (target, offset, size, data); | - |
2378 | } | 0 |
2379 | | - |
2380 | QOpenGLFunctionsPrivate::QOpenGLFunctionsPrivate(QOpenGLContext *) | - |
2381 | { | - |
2382 | /* Assign a pointer to an above defined static function | - |
2383 | * which on first call resolves the function from the current | - |
2384 | * context, assigns it to the member variable and executes it | - |
2385 | * (see Resolver template) */ | - |
2386 | #ifndef QT_OPENGL_ES_2 | - |
2387 | ActiveTexture = qopenglfResolveActiveTexture; never executed (the execution status of this line is deduced): ActiveTexture = qopenglfResolveActiveTexture; | - |
2388 | AttachShader = qopenglfResolveAttachShader; never executed (the execution status of this line is deduced): AttachShader = qopenglfResolveAttachShader; | - |
2389 | BindAttribLocation = qopenglfResolveBindAttribLocation; never executed (the execution status of this line is deduced): BindAttribLocation = qopenglfResolveBindAttribLocation; | - |
2390 | BindBuffer = qopenglfResolveBindBuffer; never executed (the execution status of this line is deduced): BindBuffer = qopenglfResolveBindBuffer; | - |
2391 | BindFramebuffer = qopenglfResolveBindFramebuffer; never executed (the execution status of this line is deduced): BindFramebuffer = qopenglfResolveBindFramebuffer; | - |
2392 | BindRenderbuffer = qopenglfResolveBindRenderbuffer; never executed (the execution status of this line is deduced): BindRenderbuffer = qopenglfResolveBindRenderbuffer; | - |
2393 | BlendColor = qopenglfResolveBlendColor; never executed (the execution status of this line is deduced): BlendColor = qopenglfResolveBlendColor; | - |
2394 | BlendEquation = qopenglfResolveBlendEquation; never executed (the execution status of this line is deduced): BlendEquation = qopenglfResolveBlendEquation; | - |
2395 | BlendEquationSeparate = qopenglfResolveBlendEquationSeparate; never executed (the execution status of this line is deduced): BlendEquationSeparate = qopenglfResolveBlendEquationSeparate; | - |
2396 | BlendFuncSeparate = qopenglfResolveBlendFuncSeparate; never executed (the execution status of this line is deduced): BlendFuncSeparate = qopenglfResolveBlendFuncSeparate; | - |
2397 | BufferData = qopenglfResolveBufferData; never executed (the execution status of this line is deduced): BufferData = qopenglfResolveBufferData; | - |
2398 | BufferSubData = qopenglfResolveBufferSubData; never executed (the execution status of this line is deduced): BufferSubData = qopenglfResolveBufferSubData; | - |
2399 | CheckFramebufferStatus = qopenglfResolveCheckFramebufferStatus; never executed (the execution status of this line is deduced): CheckFramebufferStatus = qopenglfResolveCheckFramebufferStatus; | - |
2400 | CompileShader = qopenglfResolveCompileShader; never executed (the execution status of this line is deduced): CompileShader = qopenglfResolveCompileShader; | - |
2401 | CompressedTexImage2D = qopenglfResolveCompressedTexImage2D; never executed (the execution status of this line is deduced): CompressedTexImage2D = qopenglfResolveCompressedTexImage2D; | - |
2402 | CompressedTexSubImage2D = qopenglfResolveCompressedTexSubImage2D; never executed (the execution status of this line is deduced): CompressedTexSubImage2D = qopenglfResolveCompressedTexSubImage2D; | - |
2403 | CreateProgram = qopenglfResolveCreateProgram; never executed (the execution status of this line is deduced): CreateProgram = qopenglfResolveCreateProgram; | - |
2404 | CreateShader = qopenglfResolveCreateShader; never executed (the execution status of this line is deduced): CreateShader = qopenglfResolveCreateShader; | - |
2405 | DeleteBuffers = qopenglfResolveDeleteBuffers; never executed (the execution status of this line is deduced): DeleteBuffers = qopenglfResolveDeleteBuffers; | - |
2406 | DeleteFramebuffers = qopenglfResolveDeleteFramebuffers; never executed (the execution status of this line is deduced): DeleteFramebuffers = qopenglfResolveDeleteFramebuffers; | - |
2407 | DeleteProgram = qopenglfResolveDeleteProgram; never executed (the execution status of this line is deduced): DeleteProgram = qopenglfResolveDeleteProgram; | - |
2408 | DeleteRenderbuffers = qopenglfResolveDeleteRenderbuffers; never executed (the execution status of this line is deduced): DeleteRenderbuffers = qopenglfResolveDeleteRenderbuffers; | - |
2409 | DeleteShader = qopenglfResolveDeleteShader; never executed (the execution status of this line is deduced): DeleteShader = qopenglfResolveDeleteShader; | - |
2410 | DetachShader = qopenglfResolveDetachShader; never executed (the execution status of this line is deduced): DetachShader = qopenglfResolveDetachShader; | - |
2411 | DisableVertexAttribArray = qopenglfResolveDisableVertexAttribArray; never executed (the execution status of this line is deduced): DisableVertexAttribArray = qopenglfResolveDisableVertexAttribArray; | - |
2412 | EnableVertexAttribArray = qopenglfResolveEnableVertexAttribArray; never executed (the execution status of this line is deduced): EnableVertexAttribArray = qopenglfResolveEnableVertexAttribArray; | - |
2413 | FramebufferRenderbuffer = qopenglfResolveFramebufferRenderbuffer; never executed (the execution status of this line is deduced): FramebufferRenderbuffer = qopenglfResolveFramebufferRenderbuffer; | - |
2414 | FramebufferTexture2D = qopenglfResolveFramebufferTexture2D; never executed (the execution status of this line is deduced): FramebufferTexture2D = qopenglfResolveFramebufferTexture2D; | - |
2415 | GenBuffers = qopenglfResolveGenBuffers; never executed (the execution status of this line is deduced): GenBuffers = qopenglfResolveGenBuffers; | - |
2416 | GenerateMipmap = qopenglfResolveGenerateMipmap; never executed (the execution status of this line is deduced): GenerateMipmap = qopenglfResolveGenerateMipmap; | - |
2417 | GenFramebuffers = qopenglfResolveGenFramebuffers; never executed (the execution status of this line is deduced): GenFramebuffers = qopenglfResolveGenFramebuffers; | - |
2418 | GenRenderbuffers = qopenglfResolveGenRenderbuffers; never executed (the execution status of this line is deduced): GenRenderbuffers = qopenglfResolveGenRenderbuffers; | - |
2419 | GetActiveAttrib = qopenglfResolveGetActiveAttrib; never executed (the execution status of this line is deduced): GetActiveAttrib = qopenglfResolveGetActiveAttrib; | - |
2420 | GetActiveUniform = qopenglfResolveGetActiveUniform; never executed (the execution status of this line is deduced): GetActiveUniform = qopenglfResolveGetActiveUniform; | - |
2421 | GetAttachedShaders = qopenglfResolveGetAttachedShaders; never executed (the execution status of this line is deduced): GetAttachedShaders = qopenglfResolveGetAttachedShaders; | - |
2422 | GetAttribLocation = qopenglfResolveGetAttribLocation; never executed (the execution status of this line is deduced): GetAttribLocation = qopenglfResolveGetAttribLocation; | - |
2423 | GetBufferParameteriv = qopenglfResolveGetBufferParameteriv; never executed (the execution status of this line is deduced): GetBufferParameteriv = qopenglfResolveGetBufferParameteriv; | - |
2424 | GetFramebufferAttachmentParameteriv = qopenglfResolveGetFramebufferAttachmentParameteriv; never executed (the execution status of this line is deduced): GetFramebufferAttachmentParameteriv = qopenglfResolveGetFramebufferAttachmentParameteriv; | - |
2425 | GetProgramiv = qopenglfResolveGetProgramiv; never executed (the execution status of this line is deduced): GetProgramiv = qopenglfResolveGetProgramiv; | - |
2426 | GetProgramInfoLog = qopenglfResolveGetProgramInfoLog; never executed (the execution status of this line is deduced): GetProgramInfoLog = qopenglfResolveGetProgramInfoLog; | - |
2427 | GetRenderbufferParameteriv = qopenglfResolveGetRenderbufferParameteriv; never executed (the execution status of this line is deduced): GetRenderbufferParameteriv = qopenglfResolveGetRenderbufferParameteriv; | - |
2428 | GetShaderiv = qopenglfResolveGetShaderiv; never executed (the execution status of this line is deduced): GetShaderiv = qopenglfResolveGetShaderiv; | - |
2429 | GetShaderInfoLog = qopenglfResolveGetShaderInfoLog; never executed (the execution status of this line is deduced): GetShaderInfoLog = qopenglfResolveGetShaderInfoLog; | - |
2430 | GetShaderPrecisionFormat = qopenglfResolveGetShaderPrecisionFormat; never executed (the execution status of this line is deduced): GetShaderPrecisionFormat = qopenglfResolveGetShaderPrecisionFormat; | - |
2431 | GetShaderSource = qopenglfResolveGetShaderSource; never executed (the execution status of this line is deduced): GetShaderSource = qopenglfResolveGetShaderSource; | - |
2432 | GetUniformfv = qopenglfResolveGetUniformfv; never executed (the execution status of this line is deduced): GetUniformfv = qopenglfResolveGetUniformfv; | - |
2433 | GetUniformiv = qopenglfResolveGetUniformiv; never executed (the execution status of this line is deduced): GetUniformiv = qopenglfResolveGetUniformiv; | - |
2434 | GetUniformLocation = qopenglfResolveGetUniformLocation; never executed (the execution status of this line is deduced): GetUniformLocation = qopenglfResolveGetUniformLocation; | - |
2435 | GetVertexAttribfv = qopenglfResolveGetVertexAttribfv; never executed (the execution status of this line is deduced): GetVertexAttribfv = qopenglfResolveGetVertexAttribfv; | - |
2436 | GetVertexAttribiv = qopenglfResolveGetVertexAttribiv; never executed (the execution status of this line is deduced): GetVertexAttribiv = qopenglfResolveGetVertexAttribiv; | - |
2437 | GetVertexAttribPointerv = qopenglfResolveGetVertexAttribPointerv; never executed (the execution status of this line is deduced): GetVertexAttribPointerv = qopenglfResolveGetVertexAttribPointerv; | - |
2438 | IsBuffer = qopenglfResolveIsBuffer; never executed (the execution status of this line is deduced): IsBuffer = qopenglfResolveIsBuffer; | - |
2439 | IsFramebuffer = qopenglfResolveIsFramebuffer; never executed (the execution status of this line is deduced): IsFramebuffer = qopenglfResolveIsFramebuffer; | - |
2440 | IsProgram = qopenglfResolveIsProgram; never executed (the execution status of this line is deduced): IsProgram = qopenglfResolveIsProgram; | - |
2441 | IsRenderbuffer = qopenglfResolveIsRenderbuffer; never executed (the execution status of this line is deduced): IsRenderbuffer = qopenglfResolveIsRenderbuffer; | - |
2442 | IsShader = qopenglfResolveIsShader; never executed (the execution status of this line is deduced): IsShader = qopenglfResolveIsShader; | - |
2443 | LinkProgram = qopenglfResolveLinkProgram; never executed (the execution status of this line is deduced): LinkProgram = qopenglfResolveLinkProgram; | - |
2444 | ReleaseShaderCompiler = qopenglfResolveReleaseShaderCompiler; never executed (the execution status of this line is deduced): ReleaseShaderCompiler = qopenglfResolveReleaseShaderCompiler; | - |
2445 | RenderbufferStorage = qopenglfResolveRenderbufferStorage; never executed (the execution status of this line is deduced): RenderbufferStorage = qopenglfResolveRenderbufferStorage; | - |
2446 | SampleCoverage = qopenglfResolveSampleCoverage; never executed (the execution status of this line is deduced): SampleCoverage = qopenglfResolveSampleCoverage; | - |
2447 | ShaderBinary = qopenglfResolveShaderBinary; never executed (the execution status of this line is deduced): ShaderBinary = qopenglfResolveShaderBinary; | - |
2448 | ShaderSource = qopenglfResolveShaderSource; never executed (the execution status of this line is deduced): ShaderSource = qopenglfResolveShaderSource; | - |
2449 | StencilFuncSeparate = qopenglfResolveStencilFuncSeparate; never executed (the execution status of this line is deduced): StencilFuncSeparate = qopenglfResolveStencilFuncSeparate; | - |
2450 | StencilMaskSeparate = qopenglfResolveStencilMaskSeparate; never executed (the execution status of this line is deduced): StencilMaskSeparate = qopenglfResolveStencilMaskSeparate; | - |
2451 | StencilOpSeparate = qopenglfResolveStencilOpSeparate; never executed (the execution status of this line is deduced): StencilOpSeparate = qopenglfResolveStencilOpSeparate; | - |
2452 | Uniform1f = qopenglfResolveUniform1f; never executed (the execution status of this line is deduced): Uniform1f = qopenglfResolveUniform1f; | - |
2453 | Uniform1fv = qopenglfResolveUniform1fv; never executed (the execution status of this line is deduced): Uniform1fv = qopenglfResolveUniform1fv; | - |
2454 | Uniform1i = qopenglfResolveUniform1i; never executed (the execution status of this line is deduced): Uniform1i = qopenglfResolveUniform1i; | - |
2455 | Uniform1iv = qopenglfResolveUniform1iv; never executed (the execution status of this line is deduced): Uniform1iv = qopenglfResolveUniform1iv; | - |
2456 | Uniform2f = qopenglfResolveUniform2f; never executed (the execution status of this line is deduced): Uniform2f = qopenglfResolveUniform2f; | - |
2457 | Uniform2fv = qopenglfResolveUniform2fv; never executed (the execution status of this line is deduced): Uniform2fv = qopenglfResolveUniform2fv; | - |
2458 | Uniform2i = qopenglfResolveUniform2i; never executed (the execution status of this line is deduced): Uniform2i = qopenglfResolveUniform2i; | - |
2459 | Uniform2iv = qopenglfResolveUniform2iv; never executed (the execution status of this line is deduced): Uniform2iv = qopenglfResolveUniform2iv; | - |
2460 | Uniform3f = qopenglfResolveUniform3f; never executed (the execution status of this line is deduced): Uniform3f = qopenglfResolveUniform3f; | - |
2461 | Uniform3fv = qopenglfResolveUniform3fv; never executed (the execution status of this line is deduced): Uniform3fv = qopenglfResolveUniform3fv; | - |
2462 | Uniform3i = qopenglfResolveUniform3i; never executed (the execution status of this line is deduced): Uniform3i = qopenglfResolveUniform3i; | - |
2463 | Uniform3iv = qopenglfResolveUniform3iv; never executed (the execution status of this line is deduced): Uniform3iv = qopenglfResolveUniform3iv; | - |
2464 | Uniform4f = qopenglfResolveUniform4f; never executed (the execution status of this line is deduced): Uniform4f = qopenglfResolveUniform4f; | - |
2465 | Uniform4fv = qopenglfResolveUniform4fv; never executed (the execution status of this line is deduced): Uniform4fv = qopenglfResolveUniform4fv; | - |
2466 | Uniform4i = qopenglfResolveUniform4i; never executed (the execution status of this line is deduced): Uniform4i = qopenglfResolveUniform4i; | - |
2467 | Uniform4iv = qopenglfResolveUniform4iv; never executed (the execution status of this line is deduced): Uniform4iv = qopenglfResolveUniform4iv; | - |
2468 | UniformMatrix2fv = qopenglfResolveUniformMatrix2fv; never executed (the execution status of this line is deduced): UniformMatrix2fv = qopenglfResolveUniformMatrix2fv; | - |
2469 | UniformMatrix3fv = qopenglfResolveUniformMatrix3fv; never executed (the execution status of this line is deduced): UniformMatrix3fv = qopenglfResolveUniformMatrix3fv; | - |
2470 | UniformMatrix4fv = qopenglfResolveUniformMatrix4fv; never executed (the execution status of this line is deduced): UniformMatrix4fv = qopenglfResolveUniformMatrix4fv; | - |
2471 | UseProgram = qopenglfResolveUseProgram; never executed (the execution status of this line is deduced): UseProgram = qopenglfResolveUseProgram; | - |
2472 | ValidateProgram = qopenglfResolveValidateProgram; never executed (the execution status of this line is deduced): ValidateProgram = qopenglfResolveValidateProgram; | - |
2473 | VertexAttrib1f = qopenglfResolveVertexAttrib1f; never executed (the execution status of this line is deduced): VertexAttrib1f = qopenglfResolveVertexAttrib1f; | - |
2474 | VertexAttrib1fv = qopenglfResolveVertexAttrib1fv; never executed (the execution status of this line is deduced): VertexAttrib1fv = qopenglfResolveVertexAttrib1fv; | - |
2475 | VertexAttrib2f = qopenglfResolveVertexAttrib2f; never executed (the execution status of this line is deduced): VertexAttrib2f = qopenglfResolveVertexAttrib2f; | - |
2476 | VertexAttrib2fv = qopenglfResolveVertexAttrib2fv; never executed (the execution status of this line is deduced): VertexAttrib2fv = qopenglfResolveVertexAttrib2fv; | - |
2477 | VertexAttrib3f = qopenglfResolveVertexAttrib3f; never executed (the execution status of this line is deduced): VertexAttrib3f = qopenglfResolveVertexAttrib3f; | - |
2478 | VertexAttrib3fv = qopenglfResolveVertexAttrib3fv; never executed (the execution status of this line is deduced): VertexAttrib3fv = qopenglfResolveVertexAttrib3fv; | - |
2479 | VertexAttrib4f = qopenglfResolveVertexAttrib4f; never executed (the execution status of this line is deduced): VertexAttrib4f = qopenglfResolveVertexAttrib4f; | - |
2480 | VertexAttrib4fv = qopenglfResolveVertexAttrib4fv; never executed (the execution status of this line is deduced): VertexAttrib4fv = qopenglfResolveVertexAttrib4fv; | - |
2481 | VertexAttribPointer = qopenglfResolveVertexAttribPointer; never executed (the execution status of this line is deduced): VertexAttribPointer = qopenglfResolveVertexAttribPointer; | - |
2482 | #endif // !QT_OPENGL_ES_2 | - |
2483 | } | 0 |
2484 | | - |
2485 | QOpenGLExtensionsPrivate::QOpenGLExtensionsPrivate(QOpenGLContext *ctx) | - |
2486 | : QOpenGLFunctionsPrivate(ctx) | - |
2487 | { | - |
2488 | MapBuffer = qopenglfResolveMapBuffer; never executed (the execution status of this line is deduced): MapBuffer = qopenglfResolveMapBuffer; | - |
2489 | UnmapBuffer = qopenglfResolveUnmapBuffer; never executed (the execution status of this line is deduced): UnmapBuffer = qopenglfResolveUnmapBuffer; | - |
2490 | BlitFramebuffer = qopenglfResolveBlitFramebuffer; never executed (the execution status of this line is deduced): BlitFramebuffer = qopenglfResolveBlitFramebuffer; | - |
2491 | RenderbufferStorageMultisample = qopenglfResolveRenderbufferStorageMultisample; never executed (the execution status of this line is deduced): RenderbufferStorageMultisample = qopenglfResolveRenderbufferStorageMultisample; | - |
2492 | GetBufferSubData = qopenglfResolveGetBufferSubData; never executed (the execution status of this line is deduced): GetBufferSubData = qopenglfResolveGetBufferSubData; | - |
2493 | } | 0 |
2494 | | - |
2495 | QT_END_NAMESPACE | - |
2496 | | - |
| | |