Qt
6.x
The Qt SDK
Loading...
Searching...
No Matches
qopenglfunctions_1_1.cpp
Go to the documentation of this file.
1
// Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
/***************************************************************************
4
** This file was generated by glgen version 0.1
5
** Command line was: glgen
6
**
7
** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
8
**
9
** This is an auto-generated file.
10
** Do not edit! All changes made to it will be lost.
11
**
12
****************************************************************************/
13
14
#include "
qopenglfunctions_1_1.h
"
15
#include "
qopenglcontext.h
"
16
17
QT_BEGIN_NAMESPACE
18
33
QOpenGLFunctions_1_1::QOpenGLFunctions_1_1
()
34
:
QAbstractOpenGLFunctions
()
35
, d_1_0_Core(
nullptr
)
36
, d_1_1_Core(
nullptr
)
37
, d_1_0_Deprecated(
nullptr
)
38
, d_1_1_Deprecated(
nullptr
)
39
{
40
}
41
42
QOpenGLFunctions_1_1::~QOpenGLFunctions_1_1
()
43
{
44
if
(d_1_0_Core) {
45
d_1_0_Core->
refs
.
deref
();
46
Q_ASSERT
(d_1_0_Core->
refs
.
loadRelaxed
());
47
}
48
if
(d_1_1_Core) {
49
d_1_1_Core->
refs
.
deref
();
50
Q_ASSERT
(d_1_1_Core->
refs
.
loadRelaxed
());
51
}
52
if
(d_1_0_Deprecated) {
53
d_1_0_Deprecated->
refs
.
deref
();
54
Q_ASSERT
(d_1_0_Deprecated->
refs
.
loadRelaxed
());
55
}
56
if
(d_1_1_Deprecated) {
57
d_1_1_Deprecated->
refs
.
deref
();
58
Q_ASSERT
(d_1_1_Deprecated->
refs
.
loadRelaxed
());
59
}
60
}
61
62
bool
QOpenGLFunctions_1_1::initializeOpenGLFunctions
()
63
{
64
if
(
isInitialized
() )
65
return
true
;
66
67
QOpenGLContext
*
context
=
QOpenGLContext::currentContext
();
68
69
// If owned by a context object make sure it is current.
70
// Also check that current context is capable of resolving all needed functions
71
if
(((
owningContext
() &&
owningContext
() ==
context
) || !
owningContext
())
72
&& QOpenGLFunctions_1_1::isContextCompatible(
context
))
73
{
74
// Associate with private implementation, creating if necessary
75
// Function pointers in the backends are resolved at creation time
76
QOpenGLVersionFunctionsBackend
*
d
=
nullptr
;
77
d
=
QAbstractOpenGLFunctionsPrivate::functionsBackend
(
context
,
QOpenGLFunctions_1_0_CoreBackend::versionStatus
());
78
d_1_0_Core =
static_cast<
QOpenGLFunctions_1_0_CoreBackend
*
>
(
d
);
79
d
->refs.ref();
80
81
d
=
QAbstractOpenGLFunctionsPrivate::functionsBackend
(
context
,
QOpenGLFunctions_1_1_CoreBackend::versionStatus
());
82
d_1_1_Core =
static_cast<
QOpenGLFunctions_1_1_CoreBackend
*
>
(
d
);
83
d
->refs.ref();
84
85
d
=
QAbstractOpenGLFunctionsPrivate::functionsBackend
(
context
,
QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus
());
86
d_1_0_Deprecated =
static_cast<
QOpenGLFunctions_1_0_DeprecatedBackend
*
>
(
d
);
87
d
->refs.ref();
88
89
d
=
QAbstractOpenGLFunctionsPrivate::functionsBackend
(
context
,
QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus
());
90
d_1_1_Deprecated =
static_cast<
QOpenGLFunctions_1_1_DeprecatedBackend
*
>
(
d
);
91
d
->refs.ref();
92
93
QAbstractOpenGLFunctions::initializeOpenGLFunctions
();
94
}
95
return
isInitialized
();
96
}
97
98
bool
QOpenGLFunctions_1_1::isContextCompatible(
QOpenGLContext
*
context
)
99
{
100
Q_ASSERT
(
context
);
101
QSurfaceFormat
f
=
context
->format();
102
const
QPair<int, int>
v
=
qMakePair
(
f
.majorVersion(),
f
.minorVersion());
103
if
(
v
<
qMakePair
(1, 1))
104
return
false
;
105
106
if
(
f
.profile() ==
QSurfaceFormat::CoreProfile
)
107
return
false
;
108
109
return
true
;
110
}
111
112
QOpenGLVersionProfile
QOpenGLFunctions_1_1::versionProfile()
113
{
114
QOpenGLVersionProfile
v
;
115
v
.setVersion(1, 1);
116
return
v
;
117
}
118
119
QT_END_NAMESPACE
QAbstractOpenGLFunctionsPrivate::functionsBackend
static QOpenGLVersionFunctionsBackend * functionsBackend(QOpenGLContext *context, QOpenGLVersionFunctionsBackend::Version v)
Definition
qopenglversionfunctions.cpp:111
QAbstractOpenGLFunctions
\inmodule QtOpenGL
Definition
qopenglversionfunctions.h:175
QAbstractOpenGLFunctions::owningContext
QOpenGLContext * owningContext() const
Definition
qopenglversionfunctions.cpp:294
QAbstractOpenGLFunctions::initializeOpenGLFunctions
virtual bool initializeOpenGLFunctions()
Definition
qopenglversionfunctions.cpp:257
QAbstractOpenGLFunctions::isInitialized
bool isInitialized() const
Definition
qopenglversionfunctions.cpp:278
QBasicAtomicInteger::deref
bool deref() noexcept
Definition
qbasicatomic.h:48
QBasicAtomicInteger::loadRelaxed
T loadRelaxed() const noexcept
Definition
qbasicatomic.h:36
QOpenGLContext
\inmodule QtGui
Definition
qopenglcontext.h:67
QOpenGLContext::currentContext
static QOpenGLContext * currentContext()
Returns the last context which called makeCurrent in the current thread, or \nullptr,...
Definition
qopenglcontext.cpp:209
QOpenGLFunctions_1_0_CoreBackend
Definition
qopenglversionfunctions.h:204
QOpenGLFunctions_1_0_CoreBackend::versionStatus
static constexpr Version versionStatus()
Definition
qopenglversionfunctions.h:212
QOpenGLFunctions_1_0_DeprecatedBackend
Definition
qopenglversionfunctions.h:1209
QOpenGLFunctions_1_0_DeprecatedBackend::versionStatus
static constexpr Version versionStatus()
Definition
qopenglversionfunctions.h:1217
QOpenGLFunctions_1_1_CoreBackend
Definition
qopenglversionfunctions.h:270
QOpenGLFunctions_1_1_CoreBackend::versionStatus
static constexpr Version versionStatus()
Definition
qopenglversionfunctions.h:278
QOpenGLFunctions_1_1_DeprecatedBackend
Definition
qopenglversionfunctions.h:1485
QOpenGLFunctions_1_1_DeprecatedBackend::versionStatus
static constexpr Version versionStatus()
Definition
qopenglversionfunctions.h:1493
QOpenGLFunctions_1_1::QOpenGLFunctions_1_1
QOpenGLFunctions_1_1()
Definition
qopenglfunctions_1_1.cpp:33
QOpenGLFunctions_1_1::~QOpenGLFunctions_1_1
~QOpenGLFunctions_1_1()
Definition
qopenglfunctions_1_1.cpp:42
QOpenGLFunctions_1_1::initializeOpenGLFunctions
bool initializeOpenGLFunctions() override
Definition
qopenglfunctions_1_1.cpp:62
QOpenGLVersionFunctionsBackend
Definition
qopenglversionfunctions.h:97
QOpenGLVersionFunctionsBackend::refs
QAtomicInt refs
Definition
qopenglversionfunctions.h:140
QOpenGLVersionProfile
\inmodule QtOpenGL
Definition
qopenglversionprofile.h:20
QSurfaceFormat
The QSurfaceFormat class represents the format of a QSurface. \inmodule QtGui.
Definition
qsurfaceformat.h:17
QSurfaceFormat::CoreProfile
@ CoreProfile
Definition
qsurfaceformat.h:48
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qstandardpaths_haiku.cpp:21
QT_END_NAMESPACE
Definition
qsharedpointer.cpp:1545
context
static void * context
Definition
qandroidaudiosource.cpp:42
QPair
std::pair< T1, T2 > QPair
Definition
qcontainerfwd.h:25
qopenglcontext.h
v
GLsizei const GLfloat * v
[13]
Definition
qopengles2ext.h:788
f
GLfloat GLfloat f
Definition
qopengles2ext.h:795
qopenglfunctions_1_1.h
qMakePair
constexpr decltype(auto) qMakePair(T1 &&value1, T2 &&value2) noexcept(noexcept(std::make_pair(std::forward< T1 >(value1), std::forward< T2 >(value2))))
Definition
qpair.h:19
Q_ASSERT
#define Q_ASSERT(cond)
Definition
qrandom.cpp:47
nullptr
QObject::connect nullptr
Definition
src_corelib_kernel_qobject.cpp:255
d
double d
Definition
src_corelib_text_qlocale.cpp:9
qtbase
src
opengl
qopenglfunctions_1_1.cpp
Generated by
1.9.7