Absolute File Name: | /home/qt/qt5_coco/qt5/qtbase/src/gui/opengl/qopengltexture.cpp |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||||||||
2 | - | |||||||||||||||||||
3 | - | |||||||||||||||||||
4 | - | |||||||||||||||||||
5 | - | |||||||||||||||||||
6 | - | |||||||||||||||||||
7 | - | |||||||||||||||||||
8 | - | |||||||||||||||||||
9 | QOpenGLTexturePrivate::QOpenGLTexturePrivate(QOpenGLTexture::Target textureTarget, | - | ||||||||||||||||||
10 | QOpenGLTexture *qq) | - | ||||||||||||||||||
11 | : q_ptr(qq), | - | ||||||||||||||||||
12 | context(0), | - | ||||||||||||||||||
13 | target(textureTarget), | - | ||||||||||||||||||
14 | textureId(0), | - | ||||||||||||||||||
15 | format(QOpenGLTexture::NoFormat), | - | ||||||||||||||||||
16 | formatClass(QOpenGLTexture::NoFormatClass), | - | ||||||||||||||||||
17 | requestedMipLevels(1), | - | ||||||||||||||||||
18 | mipLevels(-1), | - | ||||||||||||||||||
19 | layers(1), | - | ||||||||||||||||||
20 | faces(1), | - | ||||||||||||||||||
21 | samples(0), | - | ||||||||||||||||||
22 | fixedSamplePositions(true), | - | ||||||||||||||||||
23 | baseLevel(0), | - | ||||||||||||||||||
24 | maxLevel(1000), | - | ||||||||||||||||||
25 | depthStencilMode(QOpenGLTexture::DepthMode), | - | ||||||||||||||||||
26 | comparisonFunction(QOpenGLTexture::CompareLessEqual), | - | ||||||||||||||||||
27 | comparisonMode(QOpenGLTexture::CompareNone), | - | ||||||||||||||||||
28 | minFilter(QOpenGLTexture::Nearest), | - | ||||||||||||||||||
29 | magFilter(QOpenGLTexture::Nearest), | - | ||||||||||||||||||
30 | maxAnisotropy(1.0f), | - | ||||||||||||||||||
31 | minLevelOfDetail(-1000.0f), | - | ||||||||||||||||||
32 | maxLevelOfDetail(1000.0f), | - | ||||||||||||||||||
33 | levelOfDetailBias(0.0f), | - | ||||||||||||||||||
34 | textureView(false), | - | ||||||||||||||||||
35 | autoGenerateMipMaps(true), | - | ||||||||||||||||||
36 | storageAllocated(false), | - | ||||||||||||||||||
37 | texFuncs(0) | - | ||||||||||||||||||
38 | { | - | ||||||||||||||||||
39 | dimensions[0] = dimensions[1] = dimensions[2] = 1; | - | ||||||||||||||||||
40 | - | |||||||||||||||||||
41 | switch (target) { | - | ||||||||||||||||||
42 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
43 | bindingTarget = QOpenGLTexture::BindingTarget1D; | - | ||||||||||||||||||
44 | break; never executed: break; | 0 | ||||||||||||||||||
45 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
46 | bindingTarget = QOpenGLTexture::BindingTarget1DArray; | - | ||||||||||||||||||
47 | break; never executed: break; | 0 | ||||||||||||||||||
48 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
49 | bindingTarget = QOpenGLTexture::BindingTarget2D; | - | ||||||||||||||||||
50 | break; never executed: break; | 0 | ||||||||||||||||||
51 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
52 | bindingTarget = QOpenGLTexture::BindingTarget2DArray; | - | ||||||||||||||||||
53 | break; never executed: break; | 0 | ||||||||||||||||||
54 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
55 | bindingTarget = QOpenGLTexture::BindingTarget3D; | - | ||||||||||||||||||
56 | break; never executed: break; | 0 | ||||||||||||||||||
57 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
58 | bindingTarget = QOpenGLTexture::BindingTargetCubeMap; | - | ||||||||||||||||||
59 | faces = 6; | - | ||||||||||||||||||
60 | break; never executed: break; | 0 | ||||||||||||||||||
61 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
62 | bindingTarget = QOpenGLTexture::BindingTargetCubeMapArray; | - | ||||||||||||||||||
63 | faces = 6; | - | ||||||||||||||||||
64 | break; never executed: break; | 0 | ||||||||||||||||||
65 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
66 | bindingTarget = QOpenGLTexture::BindingTarget2DMultisample; | - | ||||||||||||||||||
67 | break; never executed: break; | 0 | ||||||||||||||||||
68 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
69 | bindingTarget = QOpenGLTexture::BindingTarget2DMultisampleArray; | - | ||||||||||||||||||
70 | break; never executed: break; | 0 | ||||||||||||||||||
71 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
72 | bindingTarget = QOpenGLTexture::BindingTargetRectangle; | - | ||||||||||||||||||
73 | break; never executed: break; | 0 | ||||||||||||||||||
74 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
75 | bindingTarget = QOpenGLTexture::BindingTargetBuffer; | - | ||||||||||||||||||
76 | break; never executed: break; | 0 | ||||||||||||||||||
77 | } | - | ||||||||||||||||||
78 | - | |||||||||||||||||||
79 | swizzleMask[0] = QOpenGLTexture::RedValue; | - | ||||||||||||||||||
80 | swizzleMask[1] = QOpenGLTexture::GreenValue; | - | ||||||||||||||||||
81 | swizzleMask[2] = QOpenGLTexture::BlueValue; | - | ||||||||||||||||||
82 | swizzleMask[3] = QOpenGLTexture::AlphaValue; | - | ||||||||||||||||||
83 | - | |||||||||||||||||||
84 | wrapModes[0] = wrapModes[1] = wrapModes[2] = target == QOpenGLTexture::TargetRectangle
| 0 | ||||||||||||||||||
85 | ? QOpenGLTexture::ClampToEdge : QOpenGLTexture::Repeat; | - | ||||||||||||||||||
86 | } never executed: end of block | 0 | ||||||||||||||||||
87 | - | |||||||||||||||||||
88 | QOpenGLTexturePrivate::~QOpenGLTexturePrivate() | - | ||||||||||||||||||
89 | { | - | ||||||||||||||||||
90 | destroy(); | - | ||||||||||||||||||
91 | } never executed: end of block | 0 | ||||||||||||||||||
92 | - | |||||||||||||||||||
93 | void QOpenGLTexturePrivate::initializeOpenGLFunctions() | - | ||||||||||||||||||
94 | { | - | ||||||||||||||||||
95 | - | |||||||||||||||||||
96 | if (texFuncs
| 0 | ||||||||||||||||||
97 | return; never executed: return; | 0 | ||||||||||||||||||
98 | - | |||||||||||||||||||
99 | - | |||||||||||||||||||
100 | - | |||||||||||||||||||
101 | - | |||||||||||||||||||
102 | texFuncs = context->textureFunctions(); | - | ||||||||||||||||||
103 | if (!texFuncs
| 0 | ||||||||||||||||||
104 | texFuncs = new QOpenGLTextureHelper(context); | - | ||||||||||||||||||
105 | context->setTextureFunctions(texFuncs); | - | ||||||||||||||||||
106 | } never executed: end of block | 0 | ||||||||||||||||||
107 | } never executed: end of block | 0 | ||||||||||||||||||
108 | - | |||||||||||||||||||
109 | bool QOpenGLTexturePrivate::create() | - | ||||||||||||||||||
110 | { | - | ||||||||||||||||||
111 | if (textureId != 0
| 0 | ||||||||||||||||||
112 | return never executed: true;return true; never executed: return true; | 0 | ||||||||||||||||||
113 | - | |||||||||||||||||||
114 | QOpenGLContext *ctx = QOpenGLContext::currentContext(); | - | ||||||||||||||||||
115 | if (!ctx
| 0 | ||||||||||||||||||
116 | QMessageLogger(__FILE__, 157, __PRETTY_FUNCTION__).warning("Requires a valid current OpenGL context.\n" | - | ||||||||||||||||||
117 | "Texture has not been created"); | - | ||||||||||||||||||
118 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
119 | } | - | ||||||||||||||||||
120 | context = ctx; | - | ||||||||||||||||||
121 | - | |||||||||||||||||||
122 | - | |||||||||||||||||||
123 | initializeOpenGLFunctions(); | - | ||||||||||||||||||
124 | - | |||||||||||||||||||
125 | - | |||||||||||||||||||
126 | QOpenGLTexture::Feature feature = QOpenGLTexture::ImmutableStorage; | - | ||||||||||||||||||
127 | while (feature != QOpenGLTexture::MaxFeatureFlag
| 0 | ||||||||||||||||||
128 | if (QOpenGLTexture::hasFeature(feature)
| 0 | ||||||||||||||||||
129 | features |= feature; never executed: features |= feature; | 0 | ||||||||||||||||||
130 | feature = static_cast<QOpenGLTexture::Feature>(feature << 1); | - | ||||||||||||||||||
131 | } never executed: end of block | 0 | ||||||||||||||||||
132 | - | |||||||||||||||||||
133 | texFuncs->glGenTextures(1, &textureId); | - | ||||||||||||||||||
134 | return never executed: textureId != 0;return textureId != 0; never executed: return textureId != 0; | 0 | ||||||||||||||||||
135 | } | - | ||||||||||||||||||
136 | - | |||||||||||||||||||
137 | void QOpenGLTexturePrivate::destroy() | - | ||||||||||||||||||
138 | { | - | ||||||||||||||||||
139 | if (!textureId
| 0 | ||||||||||||||||||
140 | - | |||||||||||||||||||
141 | return; never executed: return; | 0 | ||||||||||||||||||
142 | } | - | ||||||||||||||||||
143 | QOpenGLContext *currentContext = QOpenGLContext::currentContext(); | - | ||||||||||||||||||
144 | if (!currentContext
| 0 | ||||||||||||||||||
145 | QMessageLogger(__FILE__, 186, __PRETTY_FUNCTION__).warning("Texture is not valid in the current context.\n" | - | ||||||||||||||||||
146 | "Texture has not been destroyed"); | - | ||||||||||||||||||
147 | return; never executed: return; | 0 | ||||||||||||||||||
148 | } | - | ||||||||||||||||||
149 | - | |||||||||||||||||||
150 | texFuncs->glDeleteTextures(1, &textureId); | - | ||||||||||||||||||
151 | - | |||||||||||||||||||
152 | context = 0; | - | ||||||||||||||||||
153 | textureId = 0; | - | ||||||||||||||||||
154 | format = QOpenGLTexture::NoFormat; | - | ||||||||||||||||||
155 | formatClass = QOpenGLTexture::NoFormatClass; | - | ||||||||||||||||||
156 | requestedMipLevels = 1; | - | ||||||||||||||||||
157 | mipLevels = -1; | - | ||||||||||||||||||
158 | layers = 1; | - | ||||||||||||||||||
159 | faces = 1; | - | ||||||||||||||||||
160 | samples = 0; | - | ||||||||||||||||||
161 | fixedSamplePositions = true, | - | ||||||||||||||||||
162 | baseLevel = 0; | - | ||||||||||||||||||
163 | maxLevel = 1000; | - | ||||||||||||||||||
164 | depthStencilMode = QOpenGLTexture::DepthMode; | - | ||||||||||||||||||
165 | minFilter = QOpenGLTexture::Nearest; | - | ||||||||||||||||||
166 | magFilter = QOpenGLTexture::Nearest; | - | ||||||||||||||||||
167 | maxAnisotropy = 1.0f; | - | ||||||||||||||||||
168 | minLevelOfDetail = -1000.0f; | - | ||||||||||||||||||
169 | maxLevelOfDetail = 1000.0f; | - | ||||||||||||||||||
170 | levelOfDetailBias = 0.0f; | - | ||||||||||||||||||
171 | textureView = false; | - | ||||||||||||||||||
172 | autoGenerateMipMaps = true; | - | ||||||||||||||||||
173 | storageAllocated = false; | - | ||||||||||||||||||
174 | texFuncs = 0; | - | ||||||||||||||||||
175 | - | |||||||||||||||||||
176 | swizzleMask[0] = QOpenGLTexture::RedValue; | - | ||||||||||||||||||
177 | swizzleMask[1] = QOpenGLTexture::GreenValue; | - | ||||||||||||||||||
178 | swizzleMask[2] = QOpenGLTexture::BlueValue; | - | ||||||||||||||||||
179 | swizzleMask[3] = QOpenGLTexture::AlphaValue; | - | ||||||||||||||||||
180 | - | |||||||||||||||||||
181 | wrapModes[0] = wrapModes[1] = wrapModes[2] = target == QOpenGLTexture::TargetRectangle
| 0 | ||||||||||||||||||
182 | ? QOpenGLTexture::ClampToEdge : QOpenGLTexture::Repeat; | - | ||||||||||||||||||
183 | } never executed: end of block | 0 | ||||||||||||||||||
184 | - | |||||||||||||||||||
185 | void QOpenGLTexturePrivate::bind() | - | ||||||||||||||||||
186 | { | - | ||||||||||||||||||
187 | texFuncs->glBindTexture(target, textureId); | - | ||||||||||||||||||
188 | } never executed: end of block | 0 | ||||||||||||||||||
189 | - | |||||||||||||||||||
190 | void QOpenGLTexturePrivate::bind(uint unit, QOpenGLTexture::TextureUnitReset reset) | - | ||||||||||||||||||
191 | { | - | ||||||||||||||||||
192 | GLint oldTextureUnit = 0; | - | ||||||||||||||||||
193 | if (reset == QOpenGLTexture::ResetTextureUnit
| 0 | ||||||||||||||||||
194 | texFuncs->glGetIntegerv(0x84E0, &oldTextureUnit); never executed: texFuncs->glGetIntegerv(0x84E0, &oldTextureUnit); | 0 | ||||||||||||||||||
195 | - | |||||||||||||||||||
196 | texFuncs->glActiveTexture(0x84C0 + unit); | - | ||||||||||||||||||
197 | texFuncs->glBindTexture(target, textureId); | - | ||||||||||||||||||
198 | - | |||||||||||||||||||
199 | if (reset == QOpenGLTexture::ResetTextureUnit
| 0 | ||||||||||||||||||
200 | texFuncs->glActiveTexture(0x84C0 + oldTextureUnit); never executed: texFuncs->glActiveTexture(0x84C0 + oldTextureUnit); | 0 | ||||||||||||||||||
201 | } never executed: end of block | 0 | ||||||||||||||||||
202 | - | |||||||||||||||||||
203 | void QOpenGLTexturePrivate::release() | - | ||||||||||||||||||
204 | { | - | ||||||||||||||||||
205 | texFuncs->glBindTexture(target, 0); | - | ||||||||||||||||||
206 | } never executed: end of block | 0 | ||||||||||||||||||
207 | - | |||||||||||||||||||
208 | void QOpenGLTexturePrivate::release(uint unit, QOpenGLTexture::TextureUnitReset reset) | - | ||||||||||||||||||
209 | { | - | ||||||||||||||||||
210 | GLint oldTextureUnit = 0; | - | ||||||||||||||||||
211 | if (reset == QOpenGLTexture::ResetTextureUnit
| 0 | ||||||||||||||||||
212 | texFuncs->glGetIntegerv(0x84E0, &oldTextureUnit); never executed: texFuncs->glGetIntegerv(0x84E0, &oldTextureUnit); | 0 | ||||||||||||||||||
213 | - | |||||||||||||||||||
214 | texFuncs->glActiveTexture(0x84C0 + unit); | - | ||||||||||||||||||
215 | texFuncs->glBindTexture(target, 0); | - | ||||||||||||||||||
216 | - | |||||||||||||||||||
217 | if (reset == QOpenGLTexture::ResetTextureUnit
| 0 | ||||||||||||||||||
218 | texFuncs->glActiveTexture(0x84C0 + oldTextureUnit); never executed: texFuncs->glActiveTexture(0x84C0 + oldTextureUnit); | 0 | ||||||||||||||||||
219 | } never executed: end of block | 0 | ||||||||||||||||||
220 | - | |||||||||||||||||||
221 | bool QOpenGLTexturePrivate::isBound() const | - | ||||||||||||||||||
222 | { | - | ||||||||||||||||||
223 | GLint boundTextureId = 0; | - | ||||||||||||||||||
224 | texFuncs->glGetIntegerv(bindingTarget, &boundTextureId); | - | ||||||||||||||||||
225 | return never executed: (static_cast<GLuint>(boundTextureId) == textureId);return (static_cast<GLuint>(boundTextureId) == textureId); never executed: return (static_cast<GLuint>(boundTextureId) == textureId); | 0 | ||||||||||||||||||
226 | } | - | ||||||||||||||||||
227 | - | |||||||||||||||||||
228 | bool QOpenGLTexturePrivate::isBound(uint unit) const | - | ||||||||||||||||||
229 | { | - | ||||||||||||||||||
230 | GLint oldTextureUnit = 0; | - | ||||||||||||||||||
231 | texFuncs->glGetIntegerv(0x84E0, &oldTextureUnit); | - | ||||||||||||||||||
232 | - | |||||||||||||||||||
233 | GLint boundTextureId = 0; | - | ||||||||||||||||||
234 | texFuncs->glActiveTexture(0x84C0 + unit); | - | ||||||||||||||||||
235 | texFuncs->glGetIntegerv(bindingTarget, &boundTextureId); | - | ||||||||||||||||||
236 | bool result = (static_cast<GLuint>(boundTextureId) == textureId); | - | ||||||||||||||||||
237 | - | |||||||||||||||||||
238 | texFuncs->glActiveTexture(0x84C0 + oldTextureUnit); | - | ||||||||||||||||||
239 | return never executed: result;return result; never executed: return result; | 0 | ||||||||||||||||||
240 | } | - | ||||||||||||||||||
241 | - | |||||||||||||||||||
242 | int QOpenGLTexturePrivate::evaluateMipLevels() const | - | ||||||||||||||||||
243 | { | - | ||||||||||||||||||
244 | switch (target) { | - | ||||||||||||||||||
245 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
246 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
247 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
248 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
249 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
250 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
251 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
252 | return never executed: qMin(maximumMipLevelCount(), qMax(1, requestedMipLevels));return qMin(maximumMipLevelCount(), qMax(1, requestedMipLevels)); never executed: return qMin(maximumMipLevelCount(), qMax(1, requestedMipLevels)); | 0 | ||||||||||||||||||
253 | - | |||||||||||||||||||
254 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
255 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
256 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
257 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
258 | default never executed: :default: never executed: default: | 0 | ||||||||||||||||||
259 | return never executed: 1;return 1; never executed: return 1; | 0 | ||||||||||||||||||
260 | } | - | ||||||||||||||||||
261 | } | - | ||||||||||||||||||
262 | - | |||||||||||||||||||
263 | static bool isSizedTextureFormat(QOpenGLTexture::TextureFormat internalFormat) | - | ||||||||||||||||||
264 | { | - | ||||||||||||||||||
265 | switch (internalFormat) { | - | ||||||||||||||||||
266 | case never executed: QOpenGLTexture::NoFormat:case QOpenGLTexture::NoFormat: never executed: case QOpenGLTexture::NoFormat: | 0 | ||||||||||||||||||
267 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
268 | - | |||||||||||||||||||
269 | case never executed: QOpenGLTexture::R8_UNorm:case QOpenGLTexture::R8_UNorm: never executed: case QOpenGLTexture::R8_UNorm: | 0 | ||||||||||||||||||
270 | case never executed: QOpenGLTexture::RG8_UNorm:case QOpenGLTexture::RG8_UNorm: never executed: case QOpenGLTexture::RG8_UNorm: | 0 | ||||||||||||||||||
271 | case never executed: QOpenGLTexture::RGB8_UNorm:case QOpenGLTexture::RGB8_UNorm: never executed: case QOpenGLTexture::RGB8_UNorm: | 0 | ||||||||||||||||||
272 | case never executed: QOpenGLTexture::RGBA8_UNorm:case QOpenGLTexture::RGBA8_UNorm: never executed: case QOpenGLTexture::RGBA8_UNorm: | 0 | ||||||||||||||||||
273 | case never executed: QOpenGLTexture::R16_UNorm:case QOpenGLTexture::R16_UNorm: never executed: case QOpenGLTexture::R16_UNorm: | 0 | ||||||||||||||||||
274 | case never executed: QOpenGLTexture::RG16_UNorm:case QOpenGLTexture::RG16_UNorm: never executed: case QOpenGLTexture::RG16_UNorm: | 0 | ||||||||||||||||||
275 | case never executed: QOpenGLTexture::RGB16_UNorm:case QOpenGLTexture::RGB16_UNorm: never executed: case QOpenGLTexture::RGB16_UNorm: | 0 | ||||||||||||||||||
276 | case never executed: QOpenGLTexture::RGBA16_UNorm:case QOpenGLTexture::RGBA16_UNorm: never executed: case QOpenGLTexture::RGBA16_UNorm: | 0 | ||||||||||||||||||
277 | case never executed: QOpenGLTexture::R8_SNorm:case QOpenGLTexture::R8_SNorm: never executed: case QOpenGLTexture::R8_SNorm: | 0 | ||||||||||||||||||
278 | case never executed: QOpenGLTexture::RG8_SNorm:case QOpenGLTexture::RG8_SNorm: never executed: case QOpenGLTexture::RG8_SNorm: | 0 | ||||||||||||||||||
279 | case never executed: QOpenGLTexture::RGB8_SNorm:case QOpenGLTexture::RGB8_SNorm: never executed: case QOpenGLTexture::RGB8_SNorm: | 0 | ||||||||||||||||||
280 | case never executed: QOpenGLTexture::RGBA8_SNorm:case QOpenGLTexture::RGBA8_SNorm: never executed: case QOpenGLTexture::RGBA8_SNorm: | 0 | ||||||||||||||||||
281 | case never executed: QOpenGLTexture::R16_SNorm:case QOpenGLTexture::R16_SNorm: never executed: case QOpenGLTexture::R16_SNorm: | 0 | ||||||||||||||||||
282 | case never executed: QOpenGLTexture::RG16_SNorm:case QOpenGLTexture::RG16_SNorm: never executed: case QOpenGLTexture::RG16_SNorm: | 0 | ||||||||||||||||||
283 | case never executed: QOpenGLTexture::RGB16_SNorm:case QOpenGLTexture::RGB16_SNorm: never executed: case QOpenGLTexture::RGB16_SNorm: | 0 | ||||||||||||||||||
284 | case never executed: QOpenGLTexture::RGBA16_SNorm:case QOpenGLTexture::RGBA16_SNorm: never executed: case QOpenGLTexture::RGBA16_SNorm: | 0 | ||||||||||||||||||
285 | case never executed: QOpenGLTexture::R8U:case QOpenGLTexture::R8U: never executed: case QOpenGLTexture::R8U: | 0 | ||||||||||||||||||
286 | case never executed: QOpenGLTexture::RG8U:case QOpenGLTexture::RG8U: never executed: case QOpenGLTexture::RG8U: | 0 | ||||||||||||||||||
287 | case never executed: QOpenGLTexture::RGB8U:case QOpenGLTexture::RGB8U: never executed: case QOpenGLTexture::RGB8U: | 0 | ||||||||||||||||||
288 | case never executed: QOpenGLTexture::RGBA8U:case QOpenGLTexture::RGBA8U: never executed: case QOpenGLTexture::RGBA8U: | 0 | ||||||||||||||||||
289 | case never executed: QOpenGLTexture::R16U:case QOpenGLTexture::R16U: never executed: case QOpenGLTexture::R16U: | 0 | ||||||||||||||||||
290 | case never executed: QOpenGLTexture::RG16U:case QOpenGLTexture::RG16U: never executed: case QOpenGLTexture::RG16U: | 0 | ||||||||||||||||||
291 | case never executed: QOpenGLTexture::RGB16U:case QOpenGLTexture::RGB16U: never executed: case QOpenGLTexture::RGB16U: | 0 | ||||||||||||||||||
292 | case never executed: QOpenGLTexture::RGBA16U:case QOpenGLTexture::RGBA16U: never executed: case QOpenGLTexture::RGBA16U: | 0 | ||||||||||||||||||
293 | case never executed: QOpenGLTexture::R32U:case QOpenGLTexture::R32U: never executed: case QOpenGLTexture::R32U: | 0 | ||||||||||||||||||
294 | case never executed: QOpenGLTexture::RG32U:case QOpenGLTexture::RG32U: never executed: case QOpenGLTexture::RG32U: | 0 | ||||||||||||||||||
295 | case never executed: QOpenGLTexture::RGB32U:case QOpenGLTexture::RGB32U: never executed: case QOpenGLTexture::RGB32U: | 0 | ||||||||||||||||||
296 | case never executed: QOpenGLTexture::RGBA32U:case QOpenGLTexture::RGBA32U: never executed: case QOpenGLTexture::RGBA32U: | 0 | ||||||||||||||||||
297 | case never executed: QOpenGLTexture::R8I:case QOpenGLTexture::R8I: never executed: case QOpenGLTexture::R8I: | 0 | ||||||||||||||||||
298 | case never executed: QOpenGLTexture::RG8I:case QOpenGLTexture::RG8I: never executed: case QOpenGLTexture::RG8I: | 0 | ||||||||||||||||||
299 | case never executed: QOpenGLTexture::RGB8I:case QOpenGLTexture::RGB8I: never executed: case QOpenGLTexture::RGB8I: | 0 | ||||||||||||||||||
300 | case never executed: QOpenGLTexture::RGBA8I:case QOpenGLTexture::RGBA8I: never executed: case QOpenGLTexture::RGBA8I: | 0 | ||||||||||||||||||
301 | case never executed: QOpenGLTexture::R16I:case QOpenGLTexture::R16I: never executed: case QOpenGLTexture::R16I: | 0 | ||||||||||||||||||
302 | case never executed: QOpenGLTexture::RG16I:case QOpenGLTexture::RG16I: never executed: case QOpenGLTexture::RG16I: | 0 | ||||||||||||||||||
303 | case never executed: QOpenGLTexture::RGB16I:case QOpenGLTexture::RGB16I: never executed: case QOpenGLTexture::RGB16I: | 0 | ||||||||||||||||||
304 | case never executed: QOpenGLTexture::RGBA16I:case QOpenGLTexture::RGBA16I: never executed: case QOpenGLTexture::RGBA16I: | 0 | ||||||||||||||||||
305 | case never executed: QOpenGLTexture::R32I:case QOpenGLTexture::R32I: never executed: case QOpenGLTexture::R32I: | 0 | ||||||||||||||||||
306 | case never executed: QOpenGLTexture::RG32I:case QOpenGLTexture::RG32I: never executed: case QOpenGLTexture::RG32I: | 0 | ||||||||||||||||||
307 | case never executed: QOpenGLTexture::RGB32I:case QOpenGLTexture::RGB32I: never executed: case QOpenGLTexture::RGB32I: | 0 | ||||||||||||||||||
308 | case never executed: QOpenGLTexture::RGBA32I:case QOpenGLTexture::RGBA32I: never executed: case QOpenGLTexture::RGBA32I: | 0 | ||||||||||||||||||
309 | case never executed: QOpenGLTexture::R16F:case QOpenGLTexture::R16F: never executed: case QOpenGLTexture::R16F: | 0 | ||||||||||||||||||
310 | case never executed: QOpenGLTexture::RG16F:case QOpenGLTexture::RG16F: never executed: case QOpenGLTexture::RG16F: | 0 | ||||||||||||||||||
311 | case never executed: QOpenGLTexture::RGB16F:case QOpenGLTexture::RGB16F: never executed: case QOpenGLTexture::RGB16F: | 0 | ||||||||||||||||||
312 | case never executed: QOpenGLTexture::RGBA16F:case QOpenGLTexture::RGBA16F: never executed: case QOpenGLTexture::RGBA16F: | 0 | ||||||||||||||||||
313 | case never executed: QOpenGLTexture::R32F:case QOpenGLTexture::R32F: never executed: case QOpenGLTexture::R32F: | 0 | ||||||||||||||||||
314 | case never executed: QOpenGLTexture::RG32F:case QOpenGLTexture::RG32F: never executed: case QOpenGLTexture::RG32F: | 0 | ||||||||||||||||||
315 | case never executed: QOpenGLTexture::RGB32F:case QOpenGLTexture::RGB32F: never executed: case QOpenGLTexture::RGB32F: | 0 | ||||||||||||||||||
316 | case never executed: QOpenGLTexture::RGBA32F:case QOpenGLTexture::RGBA32F: never executed: case QOpenGLTexture::RGBA32F: | 0 | ||||||||||||||||||
317 | case never executed: QOpenGLTexture::RGB9E5:case QOpenGLTexture::RGB9E5: never executed: case QOpenGLTexture::RGB9E5: | 0 | ||||||||||||||||||
318 | case never executed: QOpenGLTexture::RG11B10F:case QOpenGLTexture::RG11B10F: never executed: case QOpenGLTexture::RG11B10F: | 0 | ||||||||||||||||||
319 | case never executed: QOpenGLTexture::RG3B2:case QOpenGLTexture::RG3B2: never executed: case QOpenGLTexture::RG3B2: | 0 | ||||||||||||||||||
320 | case never executed: QOpenGLTexture::R5G6B5:case QOpenGLTexture::R5G6B5: never executed: case QOpenGLTexture::R5G6B5: | 0 | ||||||||||||||||||
321 | case never executed: QOpenGLTexture::RGB5A1:case QOpenGLTexture::RGB5A1: never executed: case QOpenGLTexture::RGB5A1: | 0 | ||||||||||||||||||
322 | case never executed: QOpenGLTexture::RGBA4:case QOpenGLTexture::RGBA4: never executed: case QOpenGLTexture::RGBA4: | 0 | ||||||||||||||||||
323 | case never executed: QOpenGLTexture::RGB10A2:case QOpenGLTexture::RGB10A2: never executed: case QOpenGLTexture::RGB10A2: | 0 | ||||||||||||||||||
324 | - | |||||||||||||||||||
325 | case never executed: QOpenGLTexture::D16:case QOpenGLTexture::D16: never executed: case QOpenGLTexture::D16: | 0 | ||||||||||||||||||
326 | case never executed: QOpenGLTexture::D24:case QOpenGLTexture::D24: never executed: case QOpenGLTexture::D24: | 0 | ||||||||||||||||||
327 | case never executed: QOpenGLTexture::D32:case QOpenGLTexture::D32: never executed: case QOpenGLTexture::D32: | 0 | ||||||||||||||||||
328 | case never executed: QOpenGLTexture::D32F:case QOpenGLTexture::D32F: never executed: case QOpenGLTexture::D32F: | 0 | ||||||||||||||||||
329 | - | |||||||||||||||||||
330 | case never executed: QOpenGLTexture::D24S8:case QOpenGLTexture::D24S8: never executed: case QOpenGLTexture::D24S8: | 0 | ||||||||||||||||||
331 | case never executed: QOpenGLTexture::D32FS8X24:case QOpenGLTexture::D32FS8X24: never executed: case QOpenGLTexture::D32FS8X24: | 0 | ||||||||||||||||||
332 | - | |||||||||||||||||||
333 | case never executed: QOpenGLTexture::S8:case QOpenGLTexture::S8: never executed: case QOpenGLTexture::S8: | 0 | ||||||||||||||||||
334 | - | |||||||||||||||||||
335 | case never executed: QOpenGLTexture::RGB_DXT1:case QOpenGLTexture::RGB_DXT1: never executed: case QOpenGLTexture::RGB_DXT1: | 0 | ||||||||||||||||||
336 | case never executed: QOpenGLTexture::RGBA_DXT1:case QOpenGLTexture::RGBA_DXT1: never executed: case QOpenGLTexture::RGBA_DXT1: | 0 | ||||||||||||||||||
337 | case never executed: QOpenGLTexture::RGBA_DXT3:case QOpenGLTexture::RGBA_DXT3: never executed: case QOpenGLTexture::RGBA_DXT3: | 0 | ||||||||||||||||||
338 | case never executed: QOpenGLTexture::RGBA_DXT5:case QOpenGLTexture::RGBA_DXT5: never executed: case QOpenGLTexture::RGBA_DXT5: | 0 | ||||||||||||||||||
339 | case never executed: QOpenGLTexture::R_ATI1N_UNorm:case QOpenGLTexture::R_ATI1N_UNorm: never executed: case QOpenGLTexture::R_ATI1N_UNorm: | 0 | ||||||||||||||||||
340 | case never executed: QOpenGLTexture::R_ATI1N_SNorm:case QOpenGLTexture::R_ATI1N_SNorm: never executed: case QOpenGLTexture::R_ATI1N_SNorm: | 0 | ||||||||||||||||||
341 | case never executed: QOpenGLTexture::RG_ATI2N_UNorm:case QOpenGLTexture::RG_ATI2N_UNorm: never executed: case QOpenGLTexture::RG_ATI2N_UNorm: | 0 | ||||||||||||||||||
342 | case never executed: QOpenGLTexture::RG_ATI2N_SNorm:case QOpenGLTexture::RG_ATI2N_SNorm: never executed: case QOpenGLTexture::RG_ATI2N_SNorm: | 0 | ||||||||||||||||||
343 | case never executed: QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT:case QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT: never executed: case QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT: | 0 | ||||||||||||||||||
344 | case never executed: QOpenGLTexture::RGB_BP_SIGNED_FLOAT:case QOpenGLTexture::RGB_BP_SIGNED_FLOAT: never executed: case QOpenGLTexture::RGB_BP_SIGNED_FLOAT: | 0 | ||||||||||||||||||
345 | case never executed: QOpenGLTexture::RGB_BP_UNorm:case QOpenGLTexture::RGB_BP_UNorm: never executed: case QOpenGLTexture::RGB_BP_UNorm: | 0 | ||||||||||||||||||
346 | case never executed: QOpenGLTexture::SRGB8:case QOpenGLTexture::SRGB8: never executed: case QOpenGLTexture::SRGB8: | 0 | ||||||||||||||||||
347 | case never executed: QOpenGLTexture::SRGB8_Alpha8:case QOpenGLTexture::SRGB8_Alpha8: never executed: case QOpenGLTexture::SRGB8_Alpha8: | 0 | ||||||||||||||||||
348 | case never executed: QOpenGLTexture::SRGB_DXT1:case QOpenGLTexture::SRGB_DXT1: never executed: case QOpenGLTexture::SRGB_DXT1: | 0 | ||||||||||||||||||
349 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT1:case QOpenGLTexture::SRGB_Alpha_DXT1: never executed: case QOpenGLTexture::SRGB_Alpha_DXT1: | 0 | ||||||||||||||||||
350 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT3:case QOpenGLTexture::SRGB_Alpha_DXT3: never executed: case QOpenGLTexture::SRGB_Alpha_DXT3: | 0 | ||||||||||||||||||
351 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT5:case QOpenGLTexture::SRGB_Alpha_DXT5: never executed: case QOpenGLTexture::SRGB_Alpha_DXT5: | 0 | ||||||||||||||||||
352 | case never executed: QOpenGLTexture::SRGB_BP_UNorm:case QOpenGLTexture::SRGB_BP_UNorm: never executed: case QOpenGLTexture::SRGB_BP_UNorm: | 0 | ||||||||||||||||||
353 | case never executed: QOpenGLTexture::R11_EAC_UNorm:case QOpenGLTexture::R11_EAC_UNorm: never executed: case QOpenGLTexture::R11_EAC_UNorm: | 0 | ||||||||||||||||||
354 | case never executed: QOpenGLTexture::R11_EAC_SNorm:case QOpenGLTexture::R11_EAC_SNorm: never executed: case QOpenGLTexture::R11_EAC_SNorm: | 0 | ||||||||||||||||||
355 | case never executed: QOpenGLTexture::RG11_EAC_UNorm:case QOpenGLTexture::RG11_EAC_UNorm: never executed: case QOpenGLTexture::RG11_EAC_UNorm: | 0 | ||||||||||||||||||
356 | case never executed: QOpenGLTexture::RG11_EAC_SNorm:case QOpenGLTexture::RG11_EAC_SNorm: never executed: case QOpenGLTexture::RG11_EAC_SNorm: | 0 | ||||||||||||||||||
357 | case never executed: QOpenGLTexture::RGB8_ETC2:case QOpenGLTexture::RGB8_ETC2: never executed: case QOpenGLTexture::RGB8_ETC2: | 0 | ||||||||||||||||||
358 | case never executed: QOpenGLTexture::SRGB8_ETC2:case QOpenGLTexture::SRGB8_ETC2: never executed: case QOpenGLTexture::SRGB8_ETC2: | 0 | ||||||||||||||||||
359 | case never executed: QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
360 | case never executed: QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
361 | case never executed: QOpenGLTexture::RGBA8_ETC2_EAC:case QOpenGLTexture::RGBA8_ETC2_EAC: never executed: case QOpenGLTexture::RGBA8_ETC2_EAC: | 0 | ||||||||||||||||||
362 | case never executed: QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC:case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: never executed: case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: | 0 | ||||||||||||||||||
363 | return never executed: true;return true; never executed: return true; | 0 | ||||||||||||||||||
364 | - | |||||||||||||||||||
365 | case never executed: QOpenGLTexture::RGB8_ETC1:case QOpenGLTexture::RGB8_ETC1: never executed: case QOpenGLTexture::RGB8_ETC1: | 0 | ||||||||||||||||||
366 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
367 | - | |||||||||||||||||||
368 | case never executed: QOpenGLTexture::DepthFormat:case QOpenGLTexture::DepthFormat: never executed: case QOpenGLTexture::DepthFormat: | 0 | ||||||||||||||||||
369 | case never executed: QOpenGLTexture::AlphaFormat:case QOpenGLTexture::AlphaFormat: never executed: case QOpenGLTexture::AlphaFormat: | 0 | ||||||||||||||||||
370 | - | |||||||||||||||||||
371 | case never executed: QOpenGLTexture::RGBFormat:case QOpenGLTexture::RGBFormat: never executed: case QOpenGLTexture::RGBFormat: | 0 | ||||||||||||||||||
372 | case never executed: QOpenGLTexture::RGBAFormat:case QOpenGLTexture::RGBAFormat: never executed: case QOpenGLTexture::RGBAFormat: | 0 | ||||||||||||||||||
373 | - | |||||||||||||||||||
374 | case never executed: QOpenGLTexture::LuminanceFormat:case QOpenGLTexture::LuminanceFormat: never executed: case QOpenGLTexture::LuminanceFormat: | 0 | ||||||||||||||||||
375 | - | |||||||||||||||||||
376 | case never executed: QOpenGLTexture::LuminanceAlphaFormat:case QOpenGLTexture::LuminanceAlphaFormat: never executed: case QOpenGLTexture::LuminanceAlphaFormat: | 0 | ||||||||||||||||||
377 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
378 | } | - | ||||||||||||||||||
379 | - | |||||||||||||||||||
380 | do { ((!(false)) ? qt_assert_x("Q_UNREACHABLE()", "Q_UNREACHABLE was reached",__FILE__,421) : qt_noop()); __builtin_unreachable(); } while (0); | - | ||||||||||||||||||
381 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
382 | } | - | ||||||||||||||||||
383 | - | |||||||||||||||||||
384 | static bool isTextureTargetMultisample(QOpenGLTexture::Target target) | - | ||||||||||||||||||
385 | { | - | ||||||||||||||||||
386 | switch (target) { | - | ||||||||||||||||||
387 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
388 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
389 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
390 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
391 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
392 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
393 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
394 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
395 | - | |||||||||||||||||||
396 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
397 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
398 | return never executed: true;return true; never executed: return true; | 0 | ||||||||||||||||||
399 | - | |||||||||||||||||||
400 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
401 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
402 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
403 | } | - | ||||||||||||||||||
404 | - | |||||||||||||||||||
405 | do { ((!(false)) ? qt_assert_x("Q_UNREACHABLE()", "Q_UNREACHABLE was reached",__FILE__,446) : qt_noop()); __builtin_unreachable(); } while (0); | - | ||||||||||||||||||
406 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
407 | } | - | ||||||||||||||||||
408 | - | |||||||||||||||||||
409 | bool QOpenGLTexturePrivate::isUsingImmutableStorage() const | - | ||||||||||||||||||
410 | { | - | ||||||||||||||||||
411 | - | |||||||||||||||||||
412 | - | |||||||||||||||||||
413 | - | |||||||||||||||||||
414 | return never executed: isSizedTextureFormat(format)return isSizedTextureFormat(format) && (isTextureTargetMultisample(target) ? features.testFlag(QOpenGLTexture::ImmutableMultisampleStorage) : features.testFlag(QOpenGLTexture::ImmutableStorage));
never executed: return isSizedTextureFormat(format) && (isTextureTargetMultisample(target) ? features.testFlag(QOpenGLTexture::ImmutableMultisampleStorage) : features.testFlag(QOpenGLTexture::ImmutableStorage)); | 0 | ||||||||||||||||||
415 | && (
never executed: return isSizedTextureFormat(format) && (isTextureTargetMultisample(target) ? features.testFlag(QOpenGLTexture::ImmutableMultisampleStorage) : features.testFlag(QOpenGLTexture::ImmutableStorage)); | 0 | ||||||||||||||||||
416 | ? features.testFlag(QOpenGLTexture::ImmutableMultisampleStorage)
never executed: return isSizedTextureFormat(format) && (isTextureTargetMultisample(target) ? features.testFlag(QOpenGLTexture::ImmutableMultisampleStorage) : features.testFlag(QOpenGLTexture::ImmutableStorage)); | 0 | ||||||||||||||||||
417 | : features.testFlag(QOpenGLTexture::ImmutableStorage))
never executed: return isSizedTextureFormat(format) && (isTextureTargetMultisample(target) ? features.testFlag(QOpenGLTexture::ImmutableMultisampleStorage) : features.testFlag(QOpenGLTexture::ImmutableStorage)); | 0 | ||||||||||||||||||
418 | } | - | ||||||||||||||||||
419 | - | |||||||||||||||||||
420 | void QOpenGLTexturePrivate::allocateStorage(QOpenGLTexture::PixelFormat pixelFormat, QOpenGLTexture::PixelType pixelType) | - | ||||||||||||||||||
421 | { | - | ||||||||||||||||||
422 | - | |||||||||||||||||||
423 | mipLevels = evaluateMipLevels(); | - | ||||||||||||||||||
424 | - | |||||||||||||||||||
425 | if (isUsingImmutableStorage()
| 0 | ||||||||||||||||||
426 | allocateImmutableStorage(); never executed: allocateImmutableStorage(); | 0 | ||||||||||||||||||
427 | else | - | ||||||||||||||||||
428 | allocateMutableStorage(pixelFormat, pixelType); never executed: allocateMutableStorage(pixelFormat, pixelType); | 0 | ||||||||||||||||||
429 | } | - | ||||||||||||||||||
430 | - | |||||||||||||||||||
431 | static QOpenGLTexture::PixelFormat pixelFormatCompatibleWithInternalFormat(QOpenGLTexture::TextureFormat internalFormat) | - | ||||||||||||||||||
432 | { | - | ||||||||||||||||||
433 | switch (internalFormat) { | - | ||||||||||||||||||
434 | case never executed: QOpenGLTexture::NoFormat:case QOpenGLTexture::NoFormat: never executed: case QOpenGLTexture::NoFormat: | 0 | ||||||||||||||||||
435 | return never executed: QOpenGLTexture::NoSourceFormat;return QOpenGLTexture::NoSourceFormat; never executed: return QOpenGLTexture::NoSourceFormat; | 0 | ||||||||||||||||||
436 | - | |||||||||||||||||||
437 | case never executed: QOpenGLTexture::R8_UNorm:case QOpenGLTexture::R8_UNorm: never executed: case QOpenGLTexture::R8_UNorm: | 0 | ||||||||||||||||||
438 | return never executed: QOpenGLTexture::Red;return QOpenGLTexture::Red; never executed: return QOpenGLTexture::Red; | 0 | ||||||||||||||||||
439 | - | |||||||||||||||||||
440 | case never executed: QOpenGLTexture::RG8_UNorm:case QOpenGLTexture::RG8_UNorm: never executed: case QOpenGLTexture::RG8_UNorm: | 0 | ||||||||||||||||||
441 | return never executed: QOpenGLTexture::RG;return QOpenGLTexture::RG; never executed: return QOpenGLTexture::RG; | 0 | ||||||||||||||||||
442 | - | |||||||||||||||||||
443 | case never executed: QOpenGLTexture::RGB8_UNorm:case QOpenGLTexture::RGB8_UNorm: never executed: case QOpenGLTexture::RGB8_UNorm: | 0 | ||||||||||||||||||
444 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
445 | - | |||||||||||||||||||
446 | case never executed: QOpenGLTexture::RGBA8_UNorm:case QOpenGLTexture::RGBA8_UNorm: never executed: case QOpenGLTexture::RGBA8_UNorm: | 0 | ||||||||||||||||||
447 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
448 | - | |||||||||||||||||||
449 | case never executed: QOpenGLTexture::R16_UNorm:case QOpenGLTexture::R16_UNorm: never executed: case QOpenGLTexture::R16_UNorm: | 0 | ||||||||||||||||||
450 | return never executed: QOpenGLTexture::Red;return QOpenGLTexture::Red; never executed: return QOpenGLTexture::Red; | 0 | ||||||||||||||||||
451 | - | |||||||||||||||||||
452 | case never executed: QOpenGLTexture::RG16_UNorm:case QOpenGLTexture::RG16_UNorm: never executed: case QOpenGLTexture::RG16_UNorm: | 0 | ||||||||||||||||||
453 | return never executed: QOpenGLTexture::RG;return QOpenGLTexture::RG; never executed: return QOpenGLTexture::RG; | 0 | ||||||||||||||||||
454 | - | |||||||||||||||||||
455 | case never executed: QOpenGLTexture::RGB16_UNorm:case QOpenGLTexture::RGB16_UNorm: never executed: case QOpenGLTexture::RGB16_UNorm: | 0 | ||||||||||||||||||
456 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
457 | - | |||||||||||||||||||
458 | case never executed: QOpenGLTexture::RGBA16_UNorm:case QOpenGLTexture::RGBA16_UNorm: never executed: case QOpenGLTexture::RGBA16_UNorm: | 0 | ||||||||||||||||||
459 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
460 | - | |||||||||||||||||||
461 | case never executed: QOpenGLTexture::R8_SNorm:case QOpenGLTexture::R8_SNorm: never executed: case QOpenGLTexture::R8_SNorm: | 0 | ||||||||||||||||||
462 | return never executed: QOpenGLTexture::Red;return QOpenGLTexture::Red; never executed: return QOpenGLTexture::Red; | 0 | ||||||||||||||||||
463 | - | |||||||||||||||||||
464 | case never executed: QOpenGLTexture::RG8_SNorm:case QOpenGLTexture::RG8_SNorm: never executed: case QOpenGLTexture::RG8_SNorm: | 0 | ||||||||||||||||||
465 | return never executed: QOpenGLTexture::RG;return QOpenGLTexture::RG; never executed: return QOpenGLTexture::RG; | 0 | ||||||||||||||||||
466 | - | |||||||||||||||||||
467 | case never executed: QOpenGLTexture::RGB8_SNorm:case QOpenGLTexture::RGB8_SNorm: never executed: case QOpenGLTexture::RGB8_SNorm: | 0 | ||||||||||||||||||
468 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
469 | - | |||||||||||||||||||
470 | case never executed: QOpenGLTexture::RGBA8_SNorm:case QOpenGLTexture::RGBA8_SNorm: never executed: case QOpenGLTexture::RGBA8_SNorm: | 0 | ||||||||||||||||||
471 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
472 | - | |||||||||||||||||||
473 | case never executed: QOpenGLTexture::R16_SNorm:case QOpenGLTexture::R16_SNorm: never executed: case QOpenGLTexture::R16_SNorm: | 0 | ||||||||||||||||||
474 | return never executed: QOpenGLTexture::Red;return QOpenGLTexture::Red; never executed: return QOpenGLTexture::Red; | 0 | ||||||||||||||||||
475 | - | |||||||||||||||||||
476 | case never executed: QOpenGLTexture::RG16_SNorm:case QOpenGLTexture::RG16_SNorm: never executed: case QOpenGLTexture::RG16_SNorm: | 0 | ||||||||||||||||||
477 | return never executed: QOpenGLTexture::RG;return QOpenGLTexture::RG; never executed: return QOpenGLTexture::RG; | 0 | ||||||||||||||||||
478 | - | |||||||||||||||||||
479 | case never executed: QOpenGLTexture::RGB16_SNorm:case QOpenGLTexture::RGB16_SNorm: never executed: case QOpenGLTexture::RGB16_SNorm: | 0 | ||||||||||||||||||
480 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
481 | - | |||||||||||||||||||
482 | case never executed: QOpenGLTexture::RGBA16_SNorm:case QOpenGLTexture::RGBA16_SNorm: never executed: case QOpenGLTexture::RGBA16_SNorm: | 0 | ||||||||||||||||||
483 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
484 | - | |||||||||||||||||||
485 | case never executed: QOpenGLTexture::R8U:case QOpenGLTexture::R8U: never executed: case QOpenGLTexture::R8U: | 0 | ||||||||||||||||||
486 | return never executed: QOpenGLTexture::Red_Integer;return QOpenGLTexture::Red_Integer; never executed: return QOpenGLTexture::Red_Integer; | 0 | ||||||||||||||||||
487 | - | |||||||||||||||||||
488 | case never executed: QOpenGLTexture::RG8U:case QOpenGLTexture::RG8U: never executed: case QOpenGLTexture::RG8U: | 0 | ||||||||||||||||||
489 | return never executed: QOpenGLTexture::RG_Integer;return QOpenGLTexture::RG_Integer; never executed: return QOpenGLTexture::RG_Integer; | 0 | ||||||||||||||||||
490 | - | |||||||||||||||||||
491 | case never executed: QOpenGLTexture::RGB8U:case QOpenGLTexture::RGB8U: never executed: case QOpenGLTexture::RGB8U: | 0 | ||||||||||||||||||
492 | return never executed: QOpenGLTexture::RGB_Integer;return QOpenGLTexture::RGB_Integer; never executed: return QOpenGLTexture::RGB_Integer; | 0 | ||||||||||||||||||
493 | - | |||||||||||||||||||
494 | case never executed: QOpenGLTexture::RGBA8U:case QOpenGLTexture::RGBA8U: never executed: case QOpenGLTexture::RGBA8U: | 0 | ||||||||||||||||||
495 | return never executed: QOpenGLTexture::RGBA_Integer;return QOpenGLTexture::RGBA_Integer; never executed: return QOpenGLTexture::RGBA_Integer; | 0 | ||||||||||||||||||
496 | - | |||||||||||||||||||
497 | case never executed: QOpenGLTexture::R16U:case QOpenGLTexture::R16U: never executed: case QOpenGLTexture::R16U: | 0 | ||||||||||||||||||
498 | return never executed: QOpenGLTexture::Red_Integer;return QOpenGLTexture::Red_Integer; never executed: return QOpenGLTexture::Red_Integer; | 0 | ||||||||||||||||||
499 | - | |||||||||||||||||||
500 | case never executed: QOpenGLTexture::RG16U:case QOpenGLTexture::RG16U: never executed: case QOpenGLTexture::RG16U: | 0 | ||||||||||||||||||
501 | return never executed: QOpenGLTexture::RG_Integer;return QOpenGLTexture::RG_Integer; never executed: return QOpenGLTexture::RG_Integer; | 0 | ||||||||||||||||||
502 | - | |||||||||||||||||||
503 | case never executed: QOpenGLTexture::RGB16U:case QOpenGLTexture::RGB16U: never executed: case QOpenGLTexture::RGB16U: | 0 | ||||||||||||||||||
504 | return never executed: QOpenGLTexture::RGB_Integer;return QOpenGLTexture::RGB_Integer; never executed: return QOpenGLTexture::RGB_Integer; | 0 | ||||||||||||||||||
505 | - | |||||||||||||||||||
506 | case never executed: QOpenGLTexture::RGBA16U:case QOpenGLTexture::RGBA16U: never executed: case QOpenGLTexture::RGBA16U: | 0 | ||||||||||||||||||
507 | return never executed: QOpenGLTexture::RGBA_Integer;return QOpenGLTexture::RGBA_Integer; never executed: return QOpenGLTexture::RGBA_Integer; | 0 | ||||||||||||||||||
508 | - | |||||||||||||||||||
509 | case never executed: QOpenGLTexture::R32U:case QOpenGLTexture::R32U: never executed: case QOpenGLTexture::R32U: | 0 | ||||||||||||||||||
510 | return never executed: QOpenGLTexture::Red_Integer;return QOpenGLTexture::Red_Integer; never executed: return QOpenGLTexture::Red_Integer; | 0 | ||||||||||||||||||
511 | - | |||||||||||||||||||
512 | case never executed: QOpenGLTexture::RG32U:case QOpenGLTexture::RG32U: never executed: case QOpenGLTexture::RG32U: | 0 | ||||||||||||||||||
513 | return never executed: QOpenGLTexture::RG_Integer;return QOpenGLTexture::RG_Integer; never executed: return QOpenGLTexture::RG_Integer; | 0 | ||||||||||||||||||
514 | - | |||||||||||||||||||
515 | case never executed: QOpenGLTexture::RGB32U:case QOpenGLTexture::RGB32U: never executed: case QOpenGLTexture::RGB32U: | 0 | ||||||||||||||||||
516 | return never executed: QOpenGLTexture::RGB_Integer;return QOpenGLTexture::RGB_Integer; never executed: return QOpenGLTexture::RGB_Integer; | 0 | ||||||||||||||||||
517 | - | |||||||||||||||||||
518 | case never executed: QOpenGLTexture::RGBA32U:case QOpenGLTexture::RGBA32U: never executed: case QOpenGLTexture::RGBA32U: | 0 | ||||||||||||||||||
519 | return never executed: QOpenGLTexture::RGBA_Integer;return QOpenGLTexture::RGBA_Integer; never executed: return QOpenGLTexture::RGBA_Integer; | 0 | ||||||||||||||||||
520 | - | |||||||||||||||||||
521 | case never executed: QOpenGLTexture::R8I:case QOpenGLTexture::R8I: never executed: case QOpenGLTexture::R8I: | 0 | ||||||||||||||||||
522 | return never executed: QOpenGLTexture::Red_Integer;return QOpenGLTexture::Red_Integer; never executed: return QOpenGLTexture::Red_Integer; | 0 | ||||||||||||||||||
523 | - | |||||||||||||||||||
524 | case never executed: QOpenGLTexture::RG8I:case QOpenGLTexture::RG8I: never executed: case QOpenGLTexture::RG8I: | 0 | ||||||||||||||||||
525 | return never executed: QOpenGLTexture::RG_Integer;return QOpenGLTexture::RG_Integer; never executed: return QOpenGLTexture::RG_Integer; | 0 | ||||||||||||||||||
526 | - | |||||||||||||||||||
527 | case never executed: QOpenGLTexture::RGB8I:case QOpenGLTexture::RGB8I: never executed: case QOpenGLTexture::RGB8I: | 0 | ||||||||||||||||||
528 | return never executed: QOpenGLTexture::RGB_Integer;return QOpenGLTexture::RGB_Integer; never executed: return QOpenGLTexture::RGB_Integer; | 0 | ||||||||||||||||||
529 | - | |||||||||||||||||||
530 | case never executed: QOpenGLTexture::RGBA8I:case QOpenGLTexture::RGBA8I: never executed: case QOpenGLTexture::RGBA8I: | 0 | ||||||||||||||||||
531 | return never executed: QOpenGLTexture::RGBA_Integer;return QOpenGLTexture::RGBA_Integer; never executed: return QOpenGLTexture::RGBA_Integer; | 0 | ||||||||||||||||||
532 | - | |||||||||||||||||||
533 | case never executed: QOpenGLTexture::R16I:case QOpenGLTexture::R16I: never executed: case QOpenGLTexture::R16I: | 0 | ||||||||||||||||||
534 | return never executed: QOpenGLTexture::Red_Integer;return QOpenGLTexture::Red_Integer; never executed: return QOpenGLTexture::Red_Integer; | 0 | ||||||||||||||||||
535 | - | |||||||||||||||||||
536 | case never executed: QOpenGLTexture::RG16I:case QOpenGLTexture::RG16I: never executed: case QOpenGLTexture::RG16I: | 0 | ||||||||||||||||||
537 | return never executed: QOpenGLTexture::RG_Integer;return QOpenGLTexture::RG_Integer; never executed: return QOpenGLTexture::RG_Integer; | 0 | ||||||||||||||||||
538 | - | |||||||||||||||||||
539 | case never executed: QOpenGLTexture::RGB16I:case QOpenGLTexture::RGB16I: never executed: case QOpenGLTexture::RGB16I: | 0 | ||||||||||||||||||
540 | return never executed: QOpenGLTexture::RGB_Integer;return QOpenGLTexture::RGB_Integer; never executed: return QOpenGLTexture::RGB_Integer; | 0 | ||||||||||||||||||
541 | - | |||||||||||||||||||
542 | case never executed: QOpenGLTexture::RGBA16I:case QOpenGLTexture::RGBA16I: never executed: case QOpenGLTexture::RGBA16I: | 0 | ||||||||||||||||||
543 | return never executed: QOpenGLTexture::RGBA_Integer;return QOpenGLTexture::RGBA_Integer; never executed: return QOpenGLTexture::RGBA_Integer; | 0 | ||||||||||||||||||
544 | - | |||||||||||||||||||
545 | case never executed: QOpenGLTexture::R32I:case QOpenGLTexture::R32I: never executed: case QOpenGLTexture::R32I: | 0 | ||||||||||||||||||
546 | return never executed: QOpenGLTexture::Red_Integer;return QOpenGLTexture::Red_Integer; never executed: return QOpenGLTexture::Red_Integer; | 0 | ||||||||||||||||||
547 | - | |||||||||||||||||||
548 | case never executed: QOpenGLTexture::RG32I:case QOpenGLTexture::RG32I: never executed: case QOpenGLTexture::RG32I: | 0 | ||||||||||||||||||
549 | return never executed: QOpenGLTexture::RG_Integer;return QOpenGLTexture::RG_Integer; never executed: return QOpenGLTexture::RG_Integer; | 0 | ||||||||||||||||||
550 | - | |||||||||||||||||||
551 | case never executed: QOpenGLTexture::RGB32I:case QOpenGLTexture::RGB32I: never executed: case QOpenGLTexture::RGB32I: | 0 | ||||||||||||||||||
552 | return never executed: QOpenGLTexture::RGB_Integer;return QOpenGLTexture::RGB_Integer; never executed: return QOpenGLTexture::RGB_Integer; | 0 | ||||||||||||||||||
553 | - | |||||||||||||||||||
554 | case never executed: QOpenGLTexture::RGBA32I:case QOpenGLTexture::RGBA32I: never executed: case QOpenGLTexture::RGBA32I: | 0 | ||||||||||||||||||
555 | return never executed: QOpenGLTexture::RGBA_Integer;return QOpenGLTexture::RGBA_Integer; never executed: return QOpenGLTexture::RGBA_Integer; | 0 | ||||||||||||||||||
556 | - | |||||||||||||||||||
557 | case never executed: QOpenGLTexture::R16F:case QOpenGLTexture::R16F: never executed: case QOpenGLTexture::R16F: | 0 | ||||||||||||||||||
558 | return never executed: QOpenGLTexture::Red;return QOpenGLTexture::Red; never executed: return QOpenGLTexture::Red; | 0 | ||||||||||||||||||
559 | - | |||||||||||||||||||
560 | case never executed: QOpenGLTexture::RG16F:case QOpenGLTexture::RG16F: never executed: case QOpenGLTexture::RG16F: | 0 | ||||||||||||||||||
561 | return never executed: QOpenGLTexture::RG;return QOpenGLTexture::RG; never executed: return QOpenGLTexture::RG; | 0 | ||||||||||||||||||
562 | - | |||||||||||||||||||
563 | case never executed: QOpenGLTexture::RGB16F:case QOpenGLTexture::RGB16F: never executed: case QOpenGLTexture::RGB16F: | 0 | ||||||||||||||||||
564 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
565 | - | |||||||||||||||||||
566 | case never executed: QOpenGLTexture::RGBA16F:case QOpenGLTexture::RGBA16F: never executed: case QOpenGLTexture::RGBA16F: | 0 | ||||||||||||||||||
567 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
568 | - | |||||||||||||||||||
569 | case never executed: QOpenGLTexture::R32F:case QOpenGLTexture::R32F: never executed: case QOpenGLTexture::R32F: | 0 | ||||||||||||||||||
570 | return never executed: QOpenGLTexture::Red;return QOpenGLTexture::Red; never executed: return QOpenGLTexture::Red; | 0 | ||||||||||||||||||
571 | - | |||||||||||||||||||
572 | case never executed: QOpenGLTexture::RG32F:case QOpenGLTexture::RG32F: never executed: case QOpenGLTexture::RG32F: | 0 | ||||||||||||||||||
573 | return never executed: QOpenGLTexture::RG;return QOpenGLTexture::RG; never executed: return QOpenGLTexture::RG; | 0 | ||||||||||||||||||
574 | - | |||||||||||||||||||
575 | case never executed: QOpenGLTexture::RGB32F:case QOpenGLTexture::RGB32F: never executed: case QOpenGLTexture::RGB32F: | 0 | ||||||||||||||||||
576 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
577 | - | |||||||||||||||||||
578 | case never executed: QOpenGLTexture::RGBA32F:case QOpenGLTexture::RGBA32F: never executed: case QOpenGLTexture::RGBA32F: | 0 | ||||||||||||||||||
579 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
580 | - | |||||||||||||||||||
581 | case never executed: QOpenGLTexture::RGB9E5:case QOpenGLTexture::RGB9E5: never executed: case QOpenGLTexture::RGB9E5: | 0 | ||||||||||||||||||
582 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
583 | - | |||||||||||||||||||
584 | case never executed: QOpenGLTexture::RG11B10F:case QOpenGLTexture::RG11B10F: never executed: case QOpenGLTexture::RG11B10F: | 0 | ||||||||||||||||||
585 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
586 | - | |||||||||||||||||||
587 | case never executed: QOpenGLTexture::RG3B2:case QOpenGLTexture::RG3B2: never executed: case QOpenGLTexture::RG3B2: | 0 | ||||||||||||||||||
588 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
589 | - | |||||||||||||||||||
590 | case never executed: QOpenGLTexture::R5G6B5:case QOpenGLTexture::R5G6B5: never executed: case QOpenGLTexture::R5G6B5: | 0 | ||||||||||||||||||
591 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
592 | - | |||||||||||||||||||
593 | case never executed: QOpenGLTexture::RGB5A1:case QOpenGLTexture::RGB5A1: never executed: case QOpenGLTexture::RGB5A1: | 0 | ||||||||||||||||||
594 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
595 | - | |||||||||||||||||||
596 | case never executed: QOpenGLTexture::RGBA4:case QOpenGLTexture::RGBA4: never executed: case QOpenGLTexture::RGBA4: | 0 | ||||||||||||||||||
597 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
598 | - | |||||||||||||||||||
599 | case never executed: QOpenGLTexture::RGB10A2:case QOpenGLTexture::RGB10A2: never executed: case QOpenGLTexture::RGB10A2: | 0 | ||||||||||||||||||
600 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
601 | - | |||||||||||||||||||
602 | case never executed: QOpenGLTexture::D16:case QOpenGLTexture::D16: never executed: case QOpenGLTexture::D16: | 0 | ||||||||||||||||||
603 | case never executed: QOpenGLTexture::D24:case QOpenGLTexture::D24: never executed: case QOpenGLTexture::D24: | 0 | ||||||||||||||||||
604 | case never executed: QOpenGLTexture::D32:case QOpenGLTexture::D32: never executed: case QOpenGLTexture::D32: | 0 | ||||||||||||||||||
605 | case never executed: QOpenGLTexture::D32F:case QOpenGLTexture::D32F: never executed: case QOpenGLTexture::D32F: | 0 | ||||||||||||||||||
606 | return never executed: QOpenGLTexture::Depth;return QOpenGLTexture::Depth; never executed: return QOpenGLTexture::Depth; | 0 | ||||||||||||||||||
607 | - | |||||||||||||||||||
608 | case never executed: QOpenGLTexture::D24S8:case QOpenGLTexture::D24S8: never executed: case QOpenGLTexture::D24S8: | 0 | ||||||||||||||||||
609 | case never executed: QOpenGLTexture::D32FS8X24:case QOpenGLTexture::D32FS8X24: never executed: case QOpenGLTexture::D32FS8X24: | 0 | ||||||||||||||||||
610 | return never executed: QOpenGLTexture::DepthStencil;return QOpenGLTexture::DepthStencil; never executed: return QOpenGLTexture::DepthStencil; | 0 | ||||||||||||||||||
611 | - | |||||||||||||||||||
612 | case never executed: QOpenGLTexture::S8:case QOpenGLTexture::S8: never executed: case QOpenGLTexture::S8: | 0 | ||||||||||||||||||
613 | return never executed: QOpenGLTexture::Stencil;return QOpenGLTexture::Stencil; never executed: return QOpenGLTexture::Stencil; | 0 | ||||||||||||||||||
614 | - | |||||||||||||||||||
615 | case never executed: QOpenGLTexture::RGB_DXT1:case QOpenGLTexture::RGB_DXT1: never executed: case QOpenGLTexture::RGB_DXT1: | 0 | ||||||||||||||||||
616 | case never executed: QOpenGLTexture::RGBA_DXT1:case QOpenGLTexture::RGBA_DXT1: never executed: case QOpenGLTexture::RGBA_DXT1: | 0 | ||||||||||||||||||
617 | case never executed: QOpenGLTexture::RGBA_DXT3:case QOpenGLTexture::RGBA_DXT3: never executed: case QOpenGLTexture::RGBA_DXT3: | 0 | ||||||||||||||||||
618 | case never executed: QOpenGLTexture::RGBA_DXT5:case QOpenGLTexture::RGBA_DXT5: never executed: case QOpenGLTexture::RGBA_DXT5: | 0 | ||||||||||||||||||
619 | case never executed: QOpenGLTexture::R_ATI1N_UNorm:case QOpenGLTexture::R_ATI1N_UNorm: never executed: case QOpenGLTexture::R_ATI1N_UNorm: | 0 | ||||||||||||||||||
620 | case never executed: QOpenGLTexture::R_ATI1N_SNorm:case QOpenGLTexture::R_ATI1N_SNorm: never executed: case QOpenGLTexture::R_ATI1N_SNorm: | 0 | ||||||||||||||||||
621 | case never executed: QOpenGLTexture::RG_ATI2N_UNorm:case QOpenGLTexture::RG_ATI2N_UNorm: never executed: case QOpenGLTexture::RG_ATI2N_UNorm: | 0 | ||||||||||||||||||
622 | case never executed: QOpenGLTexture::RG_ATI2N_SNorm:case QOpenGLTexture::RG_ATI2N_SNorm: never executed: case QOpenGLTexture::RG_ATI2N_SNorm: | 0 | ||||||||||||||||||
623 | case never executed: QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT:case QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT: never executed: case QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT: | 0 | ||||||||||||||||||
624 | case never executed: QOpenGLTexture::RGB_BP_SIGNED_FLOAT:case QOpenGLTexture::RGB_BP_SIGNED_FLOAT: never executed: case QOpenGLTexture::RGB_BP_SIGNED_FLOAT: | 0 | ||||||||||||||||||
625 | case never executed: QOpenGLTexture::RGB_BP_UNorm:case QOpenGLTexture::RGB_BP_UNorm: never executed: case QOpenGLTexture::RGB_BP_UNorm: | 0 | ||||||||||||||||||
626 | case never executed: QOpenGLTexture::SRGB8:case QOpenGLTexture::SRGB8: never executed: case QOpenGLTexture::SRGB8: | 0 | ||||||||||||||||||
627 | case never executed: QOpenGLTexture::SRGB8_Alpha8:case QOpenGLTexture::SRGB8_Alpha8: never executed: case QOpenGLTexture::SRGB8_Alpha8: | 0 | ||||||||||||||||||
628 | case never executed: QOpenGLTexture::SRGB_DXT1:case QOpenGLTexture::SRGB_DXT1: never executed: case QOpenGLTexture::SRGB_DXT1: | 0 | ||||||||||||||||||
629 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT1:case QOpenGLTexture::SRGB_Alpha_DXT1: never executed: case QOpenGLTexture::SRGB_Alpha_DXT1: | 0 | ||||||||||||||||||
630 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT3:case QOpenGLTexture::SRGB_Alpha_DXT3: never executed: case QOpenGLTexture::SRGB_Alpha_DXT3: | 0 | ||||||||||||||||||
631 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT5:case QOpenGLTexture::SRGB_Alpha_DXT5: never executed: case QOpenGLTexture::SRGB_Alpha_DXT5: | 0 | ||||||||||||||||||
632 | case never executed: QOpenGLTexture::SRGB_BP_UNorm:case QOpenGLTexture::SRGB_BP_UNorm: never executed: case QOpenGLTexture::SRGB_BP_UNorm: | 0 | ||||||||||||||||||
633 | case never executed: QOpenGLTexture::RGB8_ETC1:case QOpenGLTexture::RGB8_ETC1: never executed: case QOpenGLTexture::RGB8_ETC1: | 0 | ||||||||||||||||||
634 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
635 | - | |||||||||||||||||||
636 | case never executed: QOpenGLTexture::R11_EAC_UNorm:case QOpenGLTexture::R11_EAC_UNorm: never executed: case QOpenGLTexture::R11_EAC_UNorm: | 0 | ||||||||||||||||||
637 | case never executed: QOpenGLTexture::R11_EAC_SNorm:case QOpenGLTexture::R11_EAC_SNorm: never executed: case QOpenGLTexture::R11_EAC_SNorm: | 0 | ||||||||||||||||||
638 | return never executed: QOpenGLTexture::Red;return QOpenGLTexture::Red; never executed: return QOpenGLTexture::Red; | 0 | ||||||||||||||||||
639 | - | |||||||||||||||||||
640 | case never executed: QOpenGLTexture::RG11_EAC_UNorm:case QOpenGLTexture::RG11_EAC_UNorm: never executed: case QOpenGLTexture::RG11_EAC_UNorm: | 0 | ||||||||||||||||||
641 | case never executed: QOpenGLTexture::RG11_EAC_SNorm:case QOpenGLTexture::RG11_EAC_SNorm: never executed: case QOpenGLTexture::RG11_EAC_SNorm: | 0 | ||||||||||||||||||
642 | return never executed: QOpenGLTexture::RG;return QOpenGLTexture::RG; never executed: return QOpenGLTexture::RG; | 0 | ||||||||||||||||||
643 | - | |||||||||||||||||||
644 | case never executed: QOpenGLTexture::RGB8_ETC2:case QOpenGLTexture::RGB8_ETC2: never executed: case QOpenGLTexture::RGB8_ETC2: | 0 | ||||||||||||||||||
645 | case never executed: QOpenGLTexture::SRGB8_ETC2:case QOpenGLTexture::SRGB8_ETC2: never executed: case QOpenGLTexture::SRGB8_ETC2: | 0 | ||||||||||||||||||
646 | return never executed: QOpenGLTexture::RGB;return QOpenGLTexture::RGB; never executed: return QOpenGLTexture::RGB; | 0 | ||||||||||||||||||
647 | - | |||||||||||||||||||
648 | case never executed: QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
649 | case never executed: QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
650 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
651 | - | |||||||||||||||||||
652 | case never executed: QOpenGLTexture::RGBA8_ETC2_EAC:case QOpenGLTexture::RGBA8_ETC2_EAC: never executed: case QOpenGLTexture::RGBA8_ETC2_EAC: | 0 | ||||||||||||||||||
653 | case never executed: QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC:case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: never executed: case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: | 0 | ||||||||||||||||||
654 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
655 | - | |||||||||||||||||||
656 | case never executed: QOpenGLTexture::DepthFormat:case QOpenGLTexture::DepthFormat: never executed: case QOpenGLTexture::DepthFormat: | 0 | ||||||||||||||||||
657 | return never executed: QOpenGLTexture::Depth;return QOpenGLTexture::Depth; never executed: return QOpenGLTexture::Depth; | 0 | ||||||||||||||||||
658 | - | |||||||||||||||||||
659 | case never executed: QOpenGLTexture::AlphaFormat:case QOpenGLTexture::AlphaFormat: never executed: case QOpenGLTexture::AlphaFormat: | 0 | ||||||||||||||||||
660 | return never executed: QOpenGLTexture::Alpha;return QOpenGLTexture::Alpha; never executed: return QOpenGLTexture::Alpha; | 0 | ||||||||||||||||||
661 | - | |||||||||||||||||||
662 | case never executed: QOpenGLTexture::RGBFormat:case QOpenGLTexture::RGBFormat: never executed: case QOpenGLTexture::RGBFormat: | 0 | ||||||||||||||||||
663 | case never executed: QOpenGLTexture::RGBAFormat:case QOpenGLTexture::RGBAFormat: never executed: case QOpenGLTexture::RGBAFormat: | 0 | ||||||||||||||||||
664 | return never executed: QOpenGLTexture::RGBA;return QOpenGLTexture::RGBA; never executed: return QOpenGLTexture::RGBA; | 0 | ||||||||||||||||||
665 | - | |||||||||||||||||||
666 | case never executed: QOpenGLTexture::LuminanceFormat:case QOpenGLTexture::LuminanceFormat: never executed: case QOpenGLTexture::LuminanceFormat: | 0 | ||||||||||||||||||
667 | return never executed: QOpenGLTexture::Luminance;return QOpenGLTexture::Luminance; never executed: return QOpenGLTexture::Luminance; | 0 | ||||||||||||||||||
668 | - | |||||||||||||||||||
669 | case never executed: QOpenGLTexture::LuminanceAlphaFormat:case QOpenGLTexture::LuminanceAlphaFormat: never executed: case QOpenGLTexture::LuminanceAlphaFormat: | 0 | ||||||||||||||||||
670 | return never executed: QOpenGLTexture::LuminanceAlpha;return QOpenGLTexture::LuminanceAlpha; never executed: return QOpenGLTexture::LuminanceAlpha; | 0 | ||||||||||||||||||
671 | } | - | ||||||||||||||||||
672 | - | |||||||||||||||||||
673 | do { ((!(false)) ? qt_assert_x("Q_UNREACHABLE()", "Q_UNREACHABLE was reached",__FILE__,714) : qt_noop()); __builtin_unreachable(); } while (0); | - | ||||||||||||||||||
674 | return never executed: QOpenGLTexture::NoSourceFormat;return QOpenGLTexture::NoSourceFormat; never executed: return QOpenGLTexture::NoSourceFormat; | 0 | ||||||||||||||||||
675 | } | - | ||||||||||||||||||
676 | - | |||||||||||||||||||
677 | static QOpenGLTexture::PixelType pixelTypeCompatibleWithInternalFormat(QOpenGLTexture::TextureFormat internalFormat) | - | ||||||||||||||||||
678 | { | - | ||||||||||||||||||
679 | switch (internalFormat) { | - | ||||||||||||||||||
680 | case never executed: QOpenGLTexture::NoFormat:case QOpenGLTexture::NoFormat: never executed: case QOpenGLTexture::NoFormat: | 0 | ||||||||||||||||||
681 | return never executed: QOpenGLTexture::NoPixelType;return QOpenGLTexture::NoPixelType; never executed: return QOpenGLTexture::NoPixelType; | 0 | ||||||||||||||||||
682 | - | |||||||||||||||||||
683 | case never executed: QOpenGLTexture::R8_UNorm:case QOpenGLTexture::R8_UNorm: never executed: case QOpenGLTexture::R8_UNorm: | 0 | ||||||||||||||||||
684 | case never executed: QOpenGLTexture::RG8_UNorm:case QOpenGLTexture::RG8_UNorm: never executed: case QOpenGLTexture::RG8_UNorm: | 0 | ||||||||||||||||||
685 | case never executed: QOpenGLTexture::RGB8_UNorm:case QOpenGLTexture::RGB8_UNorm: never executed: case QOpenGLTexture::RGB8_UNorm: | 0 | ||||||||||||||||||
686 | case never executed: QOpenGLTexture::RGBA8_UNorm:case QOpenGLTexture::RGBA8_UNorm: never executed: case QOpenGLTexture::RGBA8_UNorm: | 0 | ||||||||||||||||||
687 | case never executed: QOpenGLTexture::R16_UNorm:case QOpenGLTexture::R16_UNorm: never executed: case QOpenGLTexture::R16_UNorm: | 0 | ||||||||||||||||||
688 | case never executed: QOpenGLTexture::RG16_UNorm:case QOpenGLTexture::RG16_UNorm: never executed: case QOpenGLTexture::RG16_UNorm: | 0 | ||||||||||||||||||
689 | case never executed: QOpenGLTexture::RGB16_UNorm:case QOpenGLTexture::RGB16_UNorm: never executed: case QOpenGLTexture::RGB16_UNorm: | 0 | ||||||||||||||||||
690 | case never executed: QOpenGLTexture::RGBA16_UNorm:case QOpenGLTexture::RGBA16_UNorm: never executed: case QOpenGLTexture::RGBA16_UNorm: | 0 | ||||||||||||||||||
691 | return never executed: QOpenGLTexture::UInt8;return QOpenGLTexture::UInt8; never executed: return QOpenGLTexture::UInt8; | 0 | ||||||||||||||||||
692 | - | |||||||||||||||||||
693 | case never executed: QOpenGLTexture::R8_SNorm:case QOpenGLTexture::R8_SNorm: never executed: case QOpenGLTexture::R8_SNorm: | 0 | ||||||||||||||||||
694 | case never executed: QOpenGLTexture::RG8_SNorm:case QOpenGLTexture::RG8_SNorm: never executed: case QOpenGLTexture::RG8_SNorm: | 0 | ||||||||||||||||||
695 | case never executed: QOpenGLTexture::RGB8_SNorm:case QOpenGLTexture::RGB8_SNorm: never executed: case QOpenGLTexture::RGB8_SNorm: | 0 | ||||||||||||||||||
696 | case never executed: QOpenGLTexture::RGBA8_SNorm:case QOpenGLTexture::RGBA8_SNorm: never executed: case QOpenGLTexture::RGBA8_SNorm: | 0 | ||||||||||||||||||
697 | case never executed: QOpenGLTexture::R16_SNorm:case QOpenGLTexture::R16_SNorm: never executed: case QOpenGLTexture::R16_SNorm: | 0 | ||||||||||||||||||
698 | case never executed: QOpenGLTexture::RG16_SNorm:case QOpenGLTexture::RG16_SNorm: never executed: case QOpenGLTexture::RG16_SNorm: | 0 | ||||||||||||||||||
699 | case never executed: QOpenGLTexture::RGB16_SNorm:case QOpenGLTexture::RGB16_SNorm: never executed: case QOpenGLTexture::RGB16_SNorm: | 0 | ||||||||||||||||||
700 | case never executed: QOpenGLTexture::RGBA16_SNorm:case QOpenGLTexture::RGBA16_SNorm: never executed: case QOpenGLTexture::RGBA16_SNorm: | 0 | ||||||||||||||||||
701 | return never executed: QOpenGLTexture::Int8;return QOpenGLTexture::Int8; never executed: return QOpenGLTexture::Int8; | 0 | ||||||||||||||||||
702 | - | |||||||||||||||||||
703 | case never executed: QOpenGLTexture::R8U:case QOpenGLTexture::R8U: never executed: case QOpenGLTexture::R8U: | 0 | ||||||||||||||||||
704 | case never executed: QOpenGLTexture::RG8U:case QOpenGLTexture::RG8U: never executed: case QOpenGLTexture::RG8U: | 0 | ||||||||||||||||||
705 | case never executed: QOpenGLTexture::RGB8U:case QOpenGLTexture::RGB8U: never executed: case QOpenGLTexture::RGB8U: | 0 | ||||||||||||||||||
706 | case never executed: QOpenGLTexture::RGBA8U:case QOpenGLTexture::RGBA8U: never executed: case QOpenGLTexture::RGBA8U: | 0 | ||||||||||||||||||
707 | case never executed: QOpenGLTexture::R16U:case QOpenGLTexture::R16U: never executed: case QOpenGLTexture::R16U: | 0 | ||||||||||||||||||
708 | case never executed: QOpenGLTexture::RG16U:case QOpenGLTexture::RG16U: never executed: case QOpenGLTexture::RG16U: | 0 | ||||||||||||||||||
709 | case never executed: QOpenGLTexture::RGB16U:case QOpenGLTexture::RGB16U: never executed: case QOpenGLTexture::RGB16U: | 0 | ||||||||||||||||||
710 | case never executed: QOpenGLTexture::RGBA16U:case QOpenGLTexture::RGBA16U: never executed: case QOpenGLTexture::RGBA16U: | 0 | ||||||||||||||||||
711 | case never executed: QOpenGLTexture::R32U:case QOpenGLTexture::R32U: never executed: case QOpenGLTexture::R32U: | 0 | ||||||||||||||||||
712 | case never executed: QOpenGLTexture::RG32U:case QOpenGLTexture::RG32U: never executed: case QOpenGLTexture::RG32U: | 0 | ||||||||||||||||||
713 | case never executed: QOpenGLTexture::RGB32U:case QOpenGLTexture::RGB32U: never executed: case QOpenGLTexture::RGB32U: | 0 | ||||||||||||||||||
714 | case never executed: QOpenGLTexture::RGBA32U:case QOpenGLTexture::RGBA32U: never executed: case QOpenGLTexture::RGBA32U: | 0 | ||||||||||||||||||
715 | return never executed: QOpenGLTexture::UInt8;return QOpenGLTexture::UInt8; never executed: return QOpenGLTexture::UInt8; | 0 | ||||||||||||||||||
716 | - | |||||||||||||||||||
717 | case never executed: QOpenGLTexture::R8I:case QOpenGLTexture::R8I: never executed: case QOpenGLTexture::R8I: | 0 | ||||||||||||||||||
718 | case never executed: QOpenGLTexture::RG8I:case QOpenGLTexture::RG8I: never executed: case QOpenGLTexture::RG8I: | 0 | ||||||||||||||||||
719 | case never executed: QOpenGLTexture::RGB8I:case QOpenGLTexture::RGB8I: never executed: case QOpenGLTexture::RGB8I: | 0 | ||||||||||||||||||
720 | case never executed: QOpenGLTexture::RGBA8I:case QOpenGLTexture::RGBA8I: never executed: case QOpenGLTexture::RGBA8I: | 0 | ||||||||||||||||||
721 | case never executed: QOpenGLTexture::R16I:case QOpenGLTexture::R16I: never executed: case QOpenGLTexture::R16I: | 0 | ||||||||||||||||||
722 | case never executed: QOpenGLTexture::RG16I:case QOpenGLTexture::RG16I: never executed: case QOpenGLTexture::RG16I: | 0 | ||||||||||||||||||
723 | case never executed: QOpenGLTexture::RGB16I:case QOpenGLTexture::RGB16I: never executed: case QOpenGLTexture::RGB16I: | 0 | ||||||||||||||||||
724 | case never executed: QOpenGLTexture::RGBA16I:case QOpenGLTexture::RGBA16I: never executed: case QOpenGLTexture::RGBA16I: | 0 | ||||||||||||||||||
725 | case never executed: QOpenGLTexture::R32I:case QOpenGLTexture::R32I: never executed: case QOpenGLTexture::R32I: | 0 | ||||||||||||||||||
726 | case never executed: QOpenGLTexture::RG32I:case QOpenGLTexture::RG32I: never executed: case QOpenGLTexture::RG32I: | 0 | ||||||||||||||||||
727 | case never executed: QOpenGLTexture::RGB32I:case QOpenGLTexture::RGB32I: never executed: case QOpenGLTexture::RGB32I: | 0 | ||||||||||||||||||
728 | case never executed: QOpenGLTexture::RGBA32I:case QOpenGLTexture::RGBA32I: never executed: case QOpenGLTexture::RGBA32I: | 0 | ||||||||||||||||||
729 | return never executed: QOpenGLTexture::Int8;return QOpenGLTexture::Int8; never executed: return QOpenGLTexture::Int8; | 0 | ||||||||||||||||||
730 | - | |||||||||||||||||||
731 | case never executed: QOpenGLTexture::R16F:case QOpenGLTexture::R16F: never executed: case QOpenGLTexture::R16F: | 0 | ||||||||||||||||||
732 | case never executed: QOpenGLTexture::RG16F:case QOpenGLTexture::RG16F: never executed: case QOpenGLTexture::RG16F: | 0 | ||||||||||||||||||
733 | case never executed: QOpenGLTexture::RGB16F:case QOpenGLTexture::RGB16F: never executed: case QOpenGLTexture::RGB16F: | 0 | ||||||||||||||||||
734 | case never executed: QOpenGLTexture::RGBA16F:case QOpenGLTexture::RGBA16F: never executed: case QOpenGLTexture::RGBA16F: | 0 | ||||||||||||||||||
735 | return never executed: QOpenGLTexture::Float16;return QOpenGLTexture::Float16; never executed: return QOpenGLTexture::Float16; | 0 | ||||||||||||||||||
736 | - | |||||||||||||||||||
737 | case never executed: QOpenGLTexture::R32F:case QOpenGLTexture::R32F: never executed: case QOpenGLTexture::R32F: | 0 | ||||||||||||||||||
738 | case never executed: QOpenGLTexture::RG32F:case QOpenGLTexture::RG32F: never executed: case QOpenGLTexture::RG32F: | 0 | ||||||||||||||||||
739 | case never executed: QOpenGLTexture::RGB32F:case QOpenGLTexture::RGB32F: never executed: case QOpenGLTexture::RGB32F: | 0 | ||||||||||||||||||
740 | case never executed: QOpenGLTexture::RGBA32F:case QOpenGLTexture::RGBA32F: never executed: case QOpenGLTexture::RGBA32F: | 0 | ||||||||||||||||||
741 | return never executed: QOpenGLTexture::Float32;return QOpenGLTexture::Float32; never executed: return QOpenGLTexture::Float32; | 0 | ||||||||||||||||||
742 | - | |||||||||||||||||||
743 | case never executed: QOpenGLTexture::RGB9E5:case QOpenGLTexture::RGB9E5: never executed: case QOpenGLTexture::RGB9E5: | 0 | ||||||||||||||||||
744 | return never executed: QOpenGLTexture::UInt16_RGB5A1_Rev;return QOpenGLTexture::UInt16_RGB5A1_Rev; never executed: return QOpenGLTexture::UInt16_RGB5A1_Rev; | 0 | ||||||||||||||||||
745 | - | |||||||||||||||||||
746 | case never executed: QOpenGLTexture::RG11B10F:case QOpenGLTexture::RG11B10F: never executed: case QOpenGLTexture::RG11B10F: | 0 | ||||||||||||||||||
747 | return never executed: QOpenGLTexture::UInt32_RG11B10F;return QOpenGLTexture::UInt32_RG11B10F; never executed: return QOpenGLTexture::UInt32_RG11B10F; | 0 | ||||||||||||||||||
748 | - | |||||||||||||||||||
749 | case never executed: QOpenGLTexture::RG3B2:case QOpenGLTexture::RG3B2: never executed: case QOpenGLTexture::RG3B2: | 0 | ||||||||||||||||||
750 | return never executed: QOpenGLTexture::UInt8_RG3B2;return QOpenGLTexture::UInt8_RG3B2; never executed: return QOpenGLTexture::UInt8_RG3B2; | 0 | ||||||||||||||||||
751 | - | |||||||||||||||||||
752 | case never executed: QOpenGLTexture::R5G6B5:case QOpenGLTexture::R5G6B5: never executed: case QOpenGLTexture::R5G6B5: | 0 | ||||||||||||||||||
753 | return never executed: QOpenGLTexture::UInt16_R5G6B5;return QOpenGLTexture::UInt16_R5G6B5; never executed: return QOpenGLTexture::UInt16_R5G6B5; | 0 | ||||||||||||||||||
754 | - | |||||||||||||||||||
755 | case never executed: QOpenGLTexture::RGB5A1:case QOpenGLTexture::RGB5A1: never executed: case QOpenGLTexture::RGB5A1: | 0 | ||||||||||||||||||
756 | return never executed: QOpenGLTexture::UInt16_RGB5A1;return QOpenGLTexture::UInt16_RGB5A1; never executed: return QOpenGLTexture::UInt16_RGB5A1; | 0 | ||||||||||||||||||
757 | - | |||||||||||||||||||
758 | case never executed: QOpenGLTexture::RGBA4:case QOpenGLTexture::RGBA4: never executed: case QOpenGLTexture::RGBA4: | 0 | ||||||||||||||||||
759 | return never executed: QOpenGLTexture::UInt16_RGBA4;return QOpenGLTexture::UInt16_RGBA4; never executed: return QOpenGLTexture::UInt16_RGBA4; | 0 | ||||||||||||||||||
760 | - | |||||||||||||||||||
761 | case never executed: QOpenGLTexture::RGB10A2:case QOpenGLTexture::RGB10A2: never executed: case QOpenGLTexture::RGB10A2: | 0 | ||||||||||||||||||
762 | return never executed: QOpenGLTexture::UInt32_RGB10A2;return QOpenGLTexture::UInt32_RGB10A2; never executed: return QOpenGLTexture::UInt32_RGB10A2; | 0 | ||||||||||||||||||
763 | - | |||||||||||||||||||
764 | case never executed: QOpenGLTexture::D16:case QOpenGLTexture::D16: never executed: case QOpenGLTexture::D16: | 0 | ||||||||||||||||||
765 | return never executed: QOpenGLTexture::UInt16;return QOpenGLTexture::UInt16; never executed: return QOpenGLTexture::UInt16; | 0 | ||||||||||||||||||
766 | - | |||||||||||||||||||
767 | case never executed: QOpenGLTexture::D24:case QOpenGLTexture::D24: never executed: case QOpenGLTexture::D24: | 0 | ||||||||||||||||||
768 | case never executed: QOpenGLTexture::D32:case QOpenGLTexture::D32: never executed: case QOpenGLTexture::D32: | 0 | ||||||||||||||||||
769 | return never executed: QOpenGLTexture::UInt32;return QOpenGLTexture::UInt32; never executed: return QOpenGLTexture::UInt32; | 0 | ||||||||||||||||||
770 | - | |||||||||||||||||||
771 | case never executed: QOpenGLTexture::D32F:case QOpenGLTexture::D32F: never executed: case QOpenGLTexture::D32F: | 0 | ||||||||||||||||||
772 | return never executed: QOpenGLTexture::Float32;return QOpenGLTexture::Float32; never executed: return QOpenGLTexture::Float32; | 0 | ||||||||||||||||||
773 | - | |||||||||||||||||||
774 | case never executed: QOpenGLTexture::D24S8:case QOpenGLTexture::D24S8: never executed: case QOpenGLTexture::D24S8: | 0 | ||||||||||||||||||
775 | return never executed: QOpenGLTexture::UInt32_D24S8;return QOpenGLTexture::UInt32_D24S8; never executed: return QOpenGLTexture::UInt32_D24S8; | 0 | ||||||||||||||||||
776 | - | |||||||||||||||||||
777 | case never executed: QOpenGLTexture::D32FS8X24:case QOpenGLTexture::D32FS8X24: never executed: case QOpenGLTexture::D32FS8X24: | 0 | ||||||||||||||||||
778 | return never executed: QOpenGLTexture::Float32_D32_UInt32_S8_X24;return QOpenGLTexture::Float32_D32_UInt32_S8_X24; never executed: return QOpenGLTexture::Float32_D32_UInt32_S8_X24; | 0 | ||||||||||||||||||
779 | - | |||||||||||||||||||
780 | case never executed: QOpenGLTexture::S8:case QOpenGLTexture::S8: never executed: case QOpenGLTexture::S8: | 0 | ||||||||||||||||||
781 | return never executed: QOpenGLTexture::UInt8;return QOpenGLTexture::UInt8; never executed: return QOpenGLTexture::UInt8; | 0 | ||||||||||||||||||
782 | - | |||||||||||||||||||
783 | case never executed: QOpenGLTexture::RGB_DXT1:case QOpenGLTexture::RGB_DXT1: never executed: case QOpenGLTexture::RGB_DXT1: | 0 | ||||||||||||||||||
784 | case never executed: QOpenGLTexture::RGBA_DXT1:case QOpenGLTexture::RGBA_DXT1: never executed: case QOpenGLTexture::RGBA_DXT1: | 0 | ||||||||||||||||||
785 | case never executed: QOpenGLTexture::RGBA_DXT3:case QOpenGLTexture::RGBA_DXT3: never executed: case QOpenGLTexture::RGBA_DXT3: | 0 | ||||||||||||||||||
786 | case never executed: QOpenGLTexture::RGBA_DXT5:case QOpenGLTexture::RGBA_DXT5: never executed: case QOpenGLTexture::RGBA_DXT5: | 0 | ||||||||||||||||||
787 | case never executed: QOpenGLTexture::R_ATI1N_UNorm:case QOpenGLTexture::R_ATI1N_UNorm: never executed: case QOpenGLTexture::R_ATI1N_UNorm: | 0 | ||||||||||||||||||
788 | case never executed: QOpenGLTexture::R_ATI1N_SNorm:case QOpenGLTexture::R_ATI1N_SNorm: never executed: case QOpenGLTexture::R_ATI1N_SNorm: | 0 | ||||||||||||||||||
789 | case never executed: QOpenGLTexture::RG_ATI2N_UNorm:case QOpenGLTexture::RG_ATI2N_UNorm: never executed: case QOpenGLTexture::RG_ATI2N_UNorm: | 0 | ||||||||||||||||||
790 | case never executed: QOpenGLTexture::RG_ATI2N_SNorm:case QOpenGLTexture::RG_ATI2N_SNorm: never executed: case QOpenGLTexture::RG_ATI2N_SNorm: | 0 | ||||||||||||||||||
791 | case never executed: QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT:case QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT: never executed: case QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT: | 0 | ||||||||||||||||||
792 | case never executed: QOpenGLTexture::RGB_BP_SIGNED_FLOAT:case QOpenGLTexture::RGB_BP_SIGNED_FLOAT: never executed: case QOpenGLTexture::RGB_BP_SIGNED_FLOAT: | 0 | ||||||||||||||||||
793 | case never executed: QOpenGLTexture::RGB_BP_UNorm:case QOpenGLTexture::RGB_BP_UNorm: never executed: case QOpenGLTexture::RGB_BP_UNorm: | 0 | ||||||||||||||||||
794 | case never executed: QOpenGLTexture::SRGB8:case QOpenGLTexture::SRGB8: never executed: case QOpenGLTexture::SRGB8: | 0 | ||||||||||||||||||
795 | case never executed: QOpenGLTexture::SRGB8_Alpha8:case QOpenGLTexture::SRGB8_Alpha8: never executed: case QOpenGLTexture::SRGB8_Alpha8: | 0 | ||||||||||||||||||
796 | case never executed: QOpenGLTexture::SRGB_DXT1:case QOpenGLTexture::SRGB_DXT1: never executed: case QOpenGLTexture::SRGB_DXT1: | 0 | ||||||||||||||||||
797 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT1:case QOpenGLTexture::SRGB_Alpha_DXT1: never executed: case QOpenGLTexture::SRGB_Alpha_DXT1: | 0 | ||||||||||||||||||
798 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT3:case QOpenGLTexture::SRGB_Alpha_DXT3: never executed: case QOpenGLTexture::SRGB_Alpha_DXT3: | 0 | ||||||||||||||||||
799 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT5:case QOpenGLTexture::SRGB_Alpha_DXT5: never executed: case QOpenGLTexture::SRGB_Alpha_DXT5: | 0 | ||||||||||||||||||
800 | case never executed: QOpenGLTexture::SRGB_BP_UNorm:case QOpenGLTexture::SRGB_BP_UNorm: never executed: case QOpenGLTexture::SRGB_BP_UNorm: | 0 | ||||||||||||||||||
801 | case never executed: QOpenGLTexture::R11_EAC_UNorm:case QOpenGLTexture::R11_EAC_UNorm: never executed: case QOpenGLTexture::R11_EAC_UNorm: | 0 | ||||||||||||||||||
802 | case never executed: QOpenGLTexture::R11_EAC_SNorm:case QOpenGLTexture::R11_EAC_SNorm: never executed: case QOpenGLTexture::R11_EAC_SNorm: | 0 | ||||||||||||||||||
803 | case never executed: QOpenGLTexture::RG11_EAC_UNorm:case QOpenGLTexture::RG11_EAC_UNorm: never executed: case QOpenGLTexture::RG11_EAC_UNorm: | 0 | ||||||||||||||||||
804 | case never executed: QOpenGLTexture::RG11_EAC_SNorm:case QOpenGLTexture::RG11_EAC_SNorm: never executed: case QOpenGLTexture::RG11_EAC_SNorm: | 0 | ||||||||||||||||||
805 | case never executed: QOpenGLTexture::RGB8_ETC2:case QOpenGLTexture::RGB8_ETC2: never executed: case QOpenGLTexture::RGB8_ETC2: | 0 | ||||||||||||||||||
806 | case never executed: QOpenGLTexture::SRGB8_ETC2:case QOpenGLTexture::SRGB8_ETC2: never executed: case QOpenGLTexture::SRGB8_ETC2: | 0 | ||||||||||||||||||
807 | case never executed: QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
808 | case never executed: QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
809 | case never executed: QOpenGLTexture::RGBA8_ETC2_EAC:case QOpenGLTexture::RGBA8_ETC2_EAC: never executed: case QOpenGLTexture::RGBA8_ETC2_EAC: | 0 | ||||||||||||||||||
810 | case never executed: QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC:case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: never executed: case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: | 0 | ||||||||||||||||||
811 | case never executed: QOpenGLTexture::RGB8_ETC1:case QOpenGLTexture::RGB8_ETC1: never executed: case QOpenGLTexture::RGB8_ETC1: | 0 | ||||||||||||||||||
812 | return never executed: QOpenGLTexture::UInt8;return QOpenGLTexture::UInt8; never executed: return QOpenGLTexture::UInt8; | 0 | ||||||||||||||||||
813 | - | |||||||||||||||||||
814 | case never executed: QOpenGLTexture::DepthFormat:case QOpenGLTexture::DepthFormat: never executed: case QOpenGLTexture::DepthFormat: | 0 | ||||||||||||||||||
815 | return never executed: QOpenGLTexture::UInt32;return QOpenGLTexture::UInt32; never executed: return QOpenGLTexture::UInt32; | 0 | ||||||||||||||||||
816 | - | |||||||||||||||||||
817 | case never executed: QOpenGLTexture::AlphaFormat:case QOpenGLTexture::AlphaFormat: never executed: case QOpenGLTexture::AlphaFormat: | 0 | ||||||||||||||||||
818 | case never executed: QOpenGLTexture::RGBFormat:case QOpenGLTexture::RGBFormat: never executed: case QOpenGLTexture::RGBFormat: | 0 | ||||||||||||||||||
819 | case never executed: QOpenGLTexture::RGBAFormat:case QOpenGLTexture::RGBAFormat: never executed: case QOpenGLTexture::RGBAFormat: | 0 | ||||||||||||||||||
820 | case never executed: QOpenGLTexture::LuminanceFormat:case QOpenGLTexture::LuminanceFormat: never executed: case QOpenGLTexture::LuminanceFormat: | 0 | ||||||||||||||||||
821 | case never executed: QOpenGLTexture::LuminanceAlphaFormat:case QOpenGLTexture::LuminanceAlphaFormat: never executed: case QOpenGLTexture::LuminanceAlphaFormat: | 0 | ||||||||||||||||||
822 | return never executed: QOpenGLTexture::UInt8;return QOpenGLTexture::UInt8; never executed: return QOpenGLTexture::UInt8; | 0 | ||||||||||||||||||
823 | } | - | ||||||||||||||||||
824 | - | |||||||||||||||||||
825 | do { ((!(false)) ? qt_assert_x("Q_UNREACHABLE()", "Q_UNREACHABLE was reached",__FILE__,866) : qt_noop()); __builtin_unreachable(); } while (0); | - | ||||||||||||||||||
826 | return never executed: QOpenGLTexture::NoPixelType;return QOpenGLTexture::NoPixelType; never executed: return QOpenGLTexture::NoPixelType; | 0 | ||||||||||||||||||
827 | } | - | ||||||||||||||||||
828 | - | |||||||||||||||||||
829 | static bool isCompressedFormat(QOpenGLTexture::TextureFormat internalFormat) | - | ||||||||||||||||||
830 | { | - | ||||||||||||||||||
831 | switch (internalFormat) { | - | ||||||||||||||||||
832 | case never executed: QOpenGLTexture::NoFormat:case QOpenGLTexture::NoFormat: never executed: case QOpenGLTexture::NoFormat: | 0 | ||||||||||||||||||
833 | - | |||||||||||||||||||
834 | case never executed: QOpenGLTexture::R8_UNorm:case QOpenGLTexture::R8_UNorm: never executed: case QOpenGLTexture::R8_UNorm: | 0 | ||||||||||||||||||
835 | case never executed: QOpenGLTexture::RG8_UNorm:case QOpenGLTexture::RG8_UNorm: never executed: case QOpenGLTexture::RG8_UNorm: | 0 | ||||||||||||||||||
836 | case never executed: QOpenGLTexture::RGB8_UNorm:case QOpenGLTexture::RGB8_UNorm: never executed: case QOpenGLTexture::RGB8_UNorm: | 0 | ||||||||||||||||||
837 | case never executed: QOpenGLTexture::RGBA8_UNorm:case QOpenGLTexture::RGBA8_UNorm: never executed: case QOpenGLTexture::RGBA8_UNorm: | 0 | ||||||||||||||||||
838 | case never executed: QOpenGLTexture::R16_UNorm:case QOpenGLTexture::R16_UNorm: never executed: case QOpenGLTexture::R16_UNorm: | 0 | ||||||||||||||||||
839 | case never executed: QOpenGLTexture::RG16_UNorm:case QOpenGLTexture::RG16_UNorm: never executed: case QOpenGLTexture::RG16_UNorm: | 0 | ||||||||||||||||||
840 | case never executed: QOpenGLTexture::RGB16_UNorm:case QOpenGLTexture::RGB16_UNorm: never executed: case QOpenGLTexture::RGB16_UNorm: | 0 | ||||||||||||||||||
841 | case never executed: QOpenGLTexture::RGBA16_UNorm:case QOpenGLTexture::RGBA16_UNorm: never executed: case QOpenGLTexture::RGBA16_UNorm: | 0 | ||||||||||||||||||
842 | case never executed: QOpenGLTexture::R8_SNorm:case QOpenGLTexture::R8_SNorm: never executed: case QOpenGLTexture::R8_SNorm: | 0 | ||||||||||||||||||
843 | case never executed: QOpenGLTexture::RG8_SNorm:case QOpenGLTexture::RG8_SNorm: never executed: case QOpenGLTexture::RG8_SNorm: | 0 | ||||||||||||||||||
844 | case never executed: QOpenGLTexture::RGB8_SNorm:case QOpenGLTexture::RGB8_SNorm: never executed: case QOpenGLTexture::RGB8_SNorm: | 0 | ||||||||||||||||||
845 | case never executed: QOpenGLTexture::RGBA8_SNorm:case QOpenGLTexture::RGBA8_SNorm: never executed: case QOpenGLTexture::RGBA8_SNorm: | 0 | ||||||||||||||||||
846 | case never executed: QOpenGLTexture::R16_SNorm:case QOpenGLTexture::R16_SNorm: never executed: case QOpenGLTexture::R16_SNorm: | 0 | ||||||||||||||||||
847 | case never executed: QOpenGLTexture::RG16_SNorm:case QOpenGLTexture::RG16_SNorm: never executed: case QOpenGLTexture::RG16_SNorm: | 0 | ||||||||||||||||||
848 | case never executed: QOpenGLTexture::RGB16_SNorm:case QOpenGLTexture::RGB16_SNorm: never executed: case QOpenGLTexture::RGB16_SNorm: | 0 | ||||||||||||||||||
849 | case never executed: QOpenGLTexture::RGBA16_SNorm:case QOpenGLTexture::RGBA16_SNorm: never executed: case QOpenGLTexture::RGBA16_SNorm: | 0 | ||||||||||||||||||
850 | case never executed: QOpenGLTexture::R8U:case QOpenGLTexture::R8U: never executed: case QOpenGLTexture::R8U: | 0 | ||||||||||||||||||
851 | case never executed: QOpenGLTexture::RG8U:case QOpenGLTexture::RG8U: never executed: case QOpenGLTexture::RG8U: | 0 | ||||||||||||||||||
852 | case never executed: QOpenGLTexture::RGB8U:case QOpenGLTexture::RGB8U: never executed: case QOpenGLTexture::RGB8U: | 0 | ||||||||||||||||||
853 | case never executed: QOpenGLTexture::RGBA8U:case QOpenGLTexture::RGBA8U: never executed: case QOpenGLTexture::RGBA8U: | 0 | ||||||||||||||||||
854 | case never executed: QOpenGLTexture::R16U:case QOpenGLTexture::R16U: never executed: case QOpenGLTexture::R16U: | 0 | ||||||||||||||||||
855 | case never executed: QOpenGLTexture::RG16U:case QOpenGLTexture::RG16U: never executed: case QOpenGLTexture::RG16U: | 0 | ||||||||||||||||||
856 | case never executed: QOpenGLTexture::RGB16U:case QOpenGLTexture::RGB16U: never executed: case QOpenGLTexture::RGB16U: | 0 | ||||||||||||||||||
857 | case never executed: QOpenGLTexture::RGBA16U:case QOpenGLTexture::RGBA16U: never executed: case QOpenGLTexture::RGBA16U: | 0 | ||||||||||||||||||
858 | case never executed: QOpenGLTexture::R32U:case QOpenGLTexture::R32U: never executed: case QOpenGLTexture::R32U: | 0 | ||||||||||||||||||
859 | case never executed: QOpenGLTexture::RG32U:case QOpenGLTexture::RG32U: never executed: case QOpenGLTexture::RG32U: | 0 | ||||||||||||||||||
860 | case never executed: QOpenGLTexture::RGB32U:case QOpenGLTexture::RGB32U: never executed: case QOpenGLTexture::RGB32U: | 0 | ||||||||||||||||||
861 | case never executed: QOpenGLTexture::RGBA32U:case QOpenGLTexture::RGBA32U: never executed: case QOpenGLTexture::RGBA32U: | 0 | ||||||||||||||||||
862 | case never executed: QOpenGLTexture::R8I:case QOpenGLTexture::R8I: never executed: case QOpenGLTexture::R8I: | 0 | ||||||||||||||||||
863 | case never executed: QOpenGLTexture::RG8I:case QOpenGLTexture::RG8I: never executed: case QOpenGLTexture::RG8I: | 0 | ||||||||||||||||||
864 | case never executed: QOpenGLTexture::RGB8I:case QOpenGLTexture::RGB8I: never executed: case QOpenGLTexture::RGB8I: | 0 | ||||||||||||||||||
865 | case never executed: QOpenGLTexture::RGBA8I:case QOpenGLTexture::RGBA8I: never executed: case QOpenGLTexture::RGBA8I: | 0 | ||||||||||||||||||
866 | case never executed: QOpenGLTexture::R16I:case QOpenGLTexture::R16I: never executed: case QOpenGLTexture::R16I: | 0 | ||||||||||||||||||
867 | case never executed: QOpenGLTexture::RG16I:case QOpenGLTexture::RG16I: never executed: case QOpenGLTexture::RG16I: | 0 | ||||||||||||||||||
868 | case never executed: QOpenGLTexture::RGB16I:case QOpenGLTexture::RGB16I: never executed: case QOpenGLTexture::RGB16I: | 0 | ||||||||||||||||||
869 | case never executed: QOpenGLTexture::RGBA16I:case QOpenGLTexture::RGBA16I: never executed: case QOpenGLTexture::RGBA16I: | 0 | ||||||||||||||||||
870 | case never executed: QOpenGLTexture::R32I:case QOpenGLTexture::R32I: never executed: case QOpenGLTexture::R32I: | 0 | ||||||||||||||||||
871 | case never executed: QOpenGLTexture::RG32I:case QOpenGLTexture::RG32I: never executed: case QOpenGLTexture::RG32I: | 0 | ||||||||||||||||||
872 | case never executed: QOpenGLTexture::RGB32I:case QOpenGLTexture::RGB32I: never executed: case QOpenGLTexture::RGB32I: | 0 | ||||||||||||||||||
873 | case never executed: QOpenGLTexture::RGBA32I:case QOpenGLTexture::RGBA32I: never executed: case QOpenGLTexture::RGBA32I: | 0 | ||||||||||||||||||
874 | case never executed: QOpenGLTexture::R16F:case QOpenGLTexture::R16F: never executed: case QOpenGLTexture::R16F: | 0 | ||||||||||||||||||
875 | case never executed: QOpenGLTexture::RG16F:case QOpenGLTexture::RG16F: never executed: case QOpenGLTexture::RG16F: | 0 | ||||||||||||||||||
876 | case never executed: QOpenGLTexture::RGB16F:case QOpenGLTexture::RGB16F: never executed: case QOpenGLTexture::RGB16F: | 0 | ||||||||||||||||||
877 | case never executed: QOpenGLTexture::RGBA16F:case QOpenGLTexture::RGBA16F: never executed: case QOpenGLTexture::RGBA16F: | 0 | ||||||||||||||||||
878 | case never executed: QOpenGLTexture::R32F:case QOpenGLTexture::R32F: never executed: case QOpenGLTexture::R32F: | 0 | ||||||||||||||||||
879 | case never executed: QOpenGLTexture::RG32F:case QOpenGLTexture::RG32F: never executed: case QOpenGLTexture::RG32F: | 0 | ||||||||||||||||||
880 | case never executed: QOpenGLTexture::RGB32F:case QOpenGLTexture::RGB32F: never executed: case QOpenGLTexture::RGB32F: | 0 | ||||||||||||||||||
881 | case never executed: QOpenGLTexture::RGBA32F:case QOpenGLTexture::RGBA32F: never executed: case QOpenGLTexture::RGBA32F: | 0 | ||||||||||||||||||
882 | case never executed: QOpenGLTexture::RGB9E5:case QOpenGLTexture::RGB9E5: never executed: case QOpenGLTexture::RGB9E5: | 0 | ||||||||||||||||||
883 | case never executed: QOpenGLTexture::RG11B10F:case QOpenGLTexture::RG11B10F: never executed: case QOpenGLTexture::RG11B10F: | 0 | ||||||||||||||||||
884 | case never executed: QOpenGLTexture::RG3B2:case QOpenGLTexture::RG3B2: never executed: case QOpenGLTexture::RG3B2: | 0 | ||||||||||||||||||
885 | case never executed: QOpenGLTexture::R5G6B5:case QOpenGLTexture::R5G6B5: never executed: case QOpenGLTexture::R5G6B5: | 0 | ||||||||||||||||||
886 | case never executed: QOpenGLTexture::RGB5A1:case QOpenGLTexture::RGB5A1: never executed: case QOpenGLTexture::RGB5A1: | 0 | ||||||||||||||||||
887 | case never executed: QOpenGLTexture::RGBA4:case QOpenGLTexture::RGBA4: never executed: case QOpenGLTexture::RGBA4: | 0 | ||||||||||||||||||
888 | case never executed: QOpenGLTexture::RGB10A2:case QOpenGLTexture::RGB10A2: never executed: case QOpenGLTexture::RGB10A2: | 0 | ||||||||||||||||||
889 | - | |||||||||||||||||||
890 | case never executed: QOpenGLTexture::D16:case QOpenGLTexture::D16: never executed: case QOpenGLTexture::D16: | 0 | ||||||||||||||||||
891 | case never executed: QOpenGLTexture::D24:case QOpenGLTexture::D24: never executed: case QOpenGLTexture::D24: | 0 | ||||||||||||||||||
892 | case never executed: QOpenGLTexture::D32:case QOpenGLTexture::D32: never executed: case QOpenGLTexture::D32: | 0 | ||||||||||||||||||
893 | case never executed: QOpenGLTexture::D32F:case QOpenGLTexture::D32F: never executed: case QOpenGLTexture::D32F: | 0 | ||||||||||||||||||
894 | - | |||||||||||||||||||
895 | case never executed: QOpenGLTexture::D24S8:case QOpenGLTexture::D24S8: never executed: case QOpenGLTexture::D24S8: | 0 | ||||||||||||||||||
896 | case never executed: QOpenGLTexture::D32FS8X24:case QOpenGLTexture::D32FS8X24: never executed: case QOpenGLTexture::D32FS8X24: | 0 | ||||||||||||||||||
897 | - | |||||||||||||||||||
898 | case never executed: QOpenGLTexture::S8:case QOpenGLTexture::S8: never executed: case QOpenGLTexture::S8: | 0 | ||||||||||||||||||
899 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
900 | - | |||||||||||||||||||
901 | case never executed: QOpenGLTexture::RGB_DXT1:case QOpenGLTexture::RGB_DXT1: never executed: case QOpenGLTexture::RGB_DXT1: | 0 | ||||||||||||||||||
902 | case never executed: QOpenGLTexture::RGBA_DXT1:case QOpenGLTexture::RGBA_DXT1: never executed: case QOpenGLTexture::RGBA_DXT1: | 0 | ||||||||||||||||||
903 | case never executed: QOpenGLTexture::RGBA_DXT3:case QOpenGLTexture::RGBA_DXT3: never executed: case QOpenGLTexture::RGBA_DXT3: | 0 | ||||||||||||||||||
904 | case never executed: QOpenGLTexture::RGBA_DXT5:case QOpenGLTexture::RGBA_DXT5: never executed: case QOpenGLTexture::RGBA_DXT5: | 0 | ||||||||||||||||||
905 | case never executed: QOpenGLTexture::R_ATI1N_UNorm:case QOpenGLTexture::R_ATI1N_UNorm: never executed: case QOpenGLTexture::R_ATI1N_UNorm: | 0 | ||||||||||||||||||
906 | case never executed: QOpenGLTexture::R_ATI1N_SNorm:case QOpenGLTexture::R_ATI1N_SNorm: never executed: case QOpenGLTexture::R_ATI1N_SNorm: | 0 | ||||||||||||||||||
907 | case never executed: QOpenGLTexture::RG_ATI2N_UNorm:case QOpenGLTexture::RG_ATI2N_UNorm: never executed: case QOpenGLTexture::RG_ATI2N_UNorm: | 0 | ||||||||||||||||||
908 | case never executed: QOpenGLTexture::RG_ATI2N_SNorm:case QOpenGLTexture::RG_ATI2N_SNorm: never executed: case QOpenGLTexture::RG_ATI2N_SNorm: | 0 | ||||||||||||||||||
909 | case never executed: QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT:case QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT: never executed: case QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT: | 0 | ||||||||||||||||||
910 | case never executed: QOpenGLTexture::RGB_BP_SIGNED_FLOAT:case QOpenGLTexture::RGB_BP_SIGNED_FLOAT: never executed: case QOpenGLTexture::RGB_BP_SIGNED_FLOAT: | 0 | ||||||||||||||||||
911 | case never executed: QOpenGLTexture::RGB_BP_UNorm:case QOpenGLTexture::RGB_BP_UNorm: never executed: case QOpenGLTexture::RGB_BP_UNorm: | 0 | ||||||||||||||||||
912 | case never executed: QOpenGLTexture::SRGB8:case QOpenGLTexture::SRGB8: never executed: case QOpenGLTexture::SRGB8: | 0 | ||||||||||||||||||
913 | case never executed: QOpenGLTexture::SRGB8_Alpha8:case QOpenGLTexture::SRGB8_Alpha8: never executed: case QOpenGLTexture::SRGB8_Alpha8: | 0 | ||||||||||||||||||
914 | case never executed: QOpenGLTexture::SRGB_DXT1:case QOpenGLTexture::SRGB_DXT1: never executed: case QOpenGLTexture::SRGB_DXT1: | 0 | ||||||||||||||||||
915 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT1:case QOpenGLTexture::SRGB_Alpha_DXT1: never executed: case QOpenGLTexture::SRGB_Alpha_DXT1: | 0 | ||||||||||||||||||
916 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT3:case QOpenGLTexture::SRGB_Alpha_DXT3: never executed: case QOpenGLTexture::SRGB_Alpha_DXT3: | 0 | ||||||||||||||||||
917 | case never executed: QOpenGLTexture::SRGB_Alpha_DXT5:case QOpenGLTexture::SRGB_Alpha_DXT5: never executed: case QOpenGLTexture::SRGB_Alpha_DXT5: | 0 | ||||||||||||||||||
918 | case never executed: QOpenGLTexture::SRGB_BP_UNorm:case QOpenGLTexture::SRGB_BP_UNorm: never executed: case QOpenGLTexture::SRGB_BP_UNorm: | 0 | ||||||||||||||||||
919 | case never executed: QOpenGLTexture::R11_EAC_UNorm:case QOpenGLTexture::R11_EAC_UNorm: never executed: case QOpenGLTexture::R11_EAC_UNorm: | 0 | ||||||||||||||||||
920 | case never executed: QOpenGLTexture::R11_EAC_SNorm:case QOpenGLTexture::R11_EAC_SNorm: never executed: case QOpenGLTexture::R11_EAC_SNorm: | 0 | ||||||||||||||||||
921 | case never executed: QOpenGLTexture::RG11_EAC_UNorm:case QOpenGLTexture::RG11_EAC_UNorm: never executed: case QOpenGLTexture::RG11_EAC_UNorm: | 0 | ||||||||||||||||||
922 | case never executed: QOpenGLTexture::RG11_EAC_SNorm:case QOpenGLTexture::RG11_EAC_SNorm: never executed: case QOpenGLTexture::RG11_EAC_SNorm: | 0 | ||||||||||||||||||
923 | case never executed: QOpenGLTexture::RGB8_ETC2:case QOpenGLTexture::RGB8_ETC2: never executed: case QOpenGLTexture::RGB8_ETC2: | 0 | ||||||||||||||||||
924 | case never executed: QOpenGLTexture::SRGB8_ETC2:case QOpenGLTexture::SRGB8_ETC2: never executed: case QOpenGLTexture::SRGB8_ETC2: | 0 | ||||||||||||||||||
925 | case never executed: QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
926 | case never executed: QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
927 | case never executed: QOpenGLTexture::RGBA8_ETC2_EAC:case QOpenGLTexture::RGBA8_ETC2_EAC: never executed: case QOpenGLTexture::RGBA8_ETC2_EAC: | 0 | ||||||||||||||||||
928 | case never executed: QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC:case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: never executed: case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: | 0 | ||||||||||||||||||
929 | case never executed: QOpenGLTexture::RGB8_ETC1:case QOpenGLTexture::RGB8_ETC1: never executed: case QOpenGLTexture::RGB8_ETC1: | 0 | ||||||||||||||||||
930 | return never executed: true;return true; never executed: return true; | 0 | ||||||||||||||||||
931 | - | |||||||||||||||||||
932 | case never executed: QOpenGLTexture::DepthFormat:case QOpenGLTexture::DepthFormat: never executed: case QOpenGLTexture::DepthFormat: | 0 | ||||||||||||||||||
933 | case never executed: QOpenGLTexture::AlphaFormat:case QOpenGLTexture::AlphaFormat: never executed: case QOpenGLTexture::AlphaFormat: | 0 | ||||||||||||||||||
934 | case never executed: QOpenGLTexture::RGBFormat:case QOpenGLTexture::RGBFormat: never executed: case QOpenGLTexture::RGBFormat: | 0 | ||||||||||||||||||
935 | case never executed: QOpenGLTexture::RGBAFormat:case QOpenGLTexture::RGBAFormat: never executed: case QOpenGLTexture::RGBAFormat: | 0 | ||||||||||||||||||
936 | case never executed: QOpenGLTexture::LuminanceFormat:case QOpenGLTexture::LuminanceFormat: never executed: case QOpenGLTexture::LuminanceFormat: | 0 | ||||||||||||||||||
937 | case never executed: QOpenGLTexture::LuminanceAlphaFormat:case QOpenGLTexture::LuminanceAlphaFormat: never executed: case QOpenGLTexture::LuminanceAlphaFormat: | 0 | ||||||||||||||||||
938 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
939 | } | - | ||||||||||||||||||
940 | - | |||||||||||||||||||
941 | do { ((!(false)) ? qt_assert_x("Q_UNREACHABLE()", "Q_UNREACHABLE was reached",__FILE__,982) : qt_noop()); __builtin_unreachable(); } while (0); | - | ||||||||||||||||||
942 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
943 | } | - | ||||||||||||||||||
944 | - | |||||||||||||||||||
945 | void QOpenGLTexturePrivate::allocateMutableStorage(QOpenGLTexture::PixelFormat pixelFormat, QOpenGLTexture::PixelType pixelType) | - | ||||||||||||||||||
946 | { | - | ||||||||||||||||||
947 | - | |||||||||||||||||||
948 | - | |||||||||||||||||||
949 | - | |||||||||||||||||||
950 | - | |||||||||||||||||||
951 | if (isCompressedFormat(format)
| 0 | ||||||||||||||||||
952 | storageAllocated = true; | - | ||||||||||||||||||
953 | return; never executed: return; | 0 | ||||||||||||||||||
954 | } | - | ||||||||||||||||||
955 | - | |||||||||||||||||||
956 | switch (target) { | - | ||||||||||||||||||
957 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
958 | - | |||||||||||||||||||
959 | QMessageLogger(__FILE__, 1000, __PRETTY_FUNCTION__).warning("Buffer textures do not allocate storage"); | - | ||||||||||||||||||
960 | return; never executed: return; | 0 | ||||||||||||||||||
961 | - | |||||||||||||||||||
962 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
963 | if (features.testFlag(QOpenGLTexture::Texture1D)
| 0 | ||||||||||||||||||
964 | for (int level = 0; level < mipLevels
| 0 | ||||||||||||||||||
965 | texFuncs->glTextureImage1D(textureId, target, bindingTarget, level, format, never executed: texFuncs->glTextureImage1D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
966 | mipLevelSize(level, dimensions[0]), never executed: texFuncs->glTextureImage1D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
967 | 0, never executed: texFuncs->glTextureImage1D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
968 | pixelFormat, pixelType, 0); never executed: texFuncs->glTextureImage1D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
969 | } never executed: else {end of block | 0 | ||||||||||||||||||
970 | QMessageLogger(__FILE__, 1011, __PRETTY_FUNCTION__).warning("1D textures are not supported"); | - | ||||||||||||||||||
971 | return; never executed: return; | 0 | ||||||||||||||||||
972 | } | - | ||||||||||||||||||
973 | break; never executed: break; | 0 | ||||||||||||||||||
974 | - | |||||||||||||||||||
975 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
976 | if (features.testFlag(QOpenGLTexture::Texture1D)
| 0 | ||||||||||||||||||
977 | && features.testFlag(QOpenGLTexture::TextureArrays)
| 0 | ||||||||||||||||||
978 | for (int level = 0; level < mipLevels
| 0 | ||||||||||||||||||
979 | texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
980 | mipLevelSize(level, dimensions[0]), never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
981 | layers, never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
982 | 0, never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
983 | pixelFormat, pixelType, 0); never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
984 | } never executed: else {end of block | 0 | ||||||||||||||||||
985 | QMessageLogger(__FILE__, 1026, __PRETTY_FUNCTION__).warning("1D array textures are not supported"); | - | ||||||||||||||||||
986 | return; never executed: return; | 0 | ||||||||||||||||||
987 | } | - | ||||||||||||||||||
988 | break; never executed: break; | 0 | ||||||||||||||||||
989 | - | |||||||||||||||||||
990 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
991 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
992 | for (int level = 0; level < mipLevels
| 0 | ||||||||||||||||||
993 | texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
994 | mipLevelSize(level, dimensions[0]), never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
995 | mipLevelSize(level, dimensions[1]), never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
996 | 0, never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
997 | pixelFormat, pixelType, 0); never executed: texFuncs->glTextureImage2D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
998 | break; never executed: break; | 0 | ||||||||||||||||||
999 | - | |||||||||||||||||||
1000 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: {case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
1001 | - | |||||||||||||||||||
1002 | - | |||||||||||||||||||
1003 | - | |||||||||||||||||||
1004 | const QOpenGLTexture::CubeMapFace faceTargets[] = { | - | ||||||||||||||||||
1005 | QOpenGLTexture::CubeMapPositiveX, QOpenGLTexture::CubeMapNegativeX, | - | ||||||||||||||||||
1006 | QOpenGLTexture::CubeMapPositiveY, QOpenGLTexture::CubeMapNegativeY, | - | ||||||||||||||||||
1007 | QOpenGLTexture::CubeMapPositiveZ, QOpenGLTexture::CubeMapNegativeZ | - | ||||||||||||||||||
1008 | }; | - | ||||||||||||||||||
1009 | - | |||||||||||||||||||
1010 | for (int faceTarget = 0; faceTarget < 6
| 0 | ||||||||||||||||||
1011 | for (int level = 0; level < mipLevels
| 0 | ||||||||||||||||||
1012 | texFuncs->glTextureImage2D(textureId, faceTargets[faceTarget], bindingTarget, | - | ||||||||||||||||||
1013 | level, format, | - | ||||||||||||||||||
1014 | mipLevelSize(level, dimensions[0]), | - | ||||||||||||||||||
1015 | mipLevelSize(level, dimensions[1]), | - | ||||||||||||||||||
1016 | 0, | - | ||||||||||||||||||
1017 | pixelFormat, pixelType, 0); | - | ||||||||||||||||||
1018 | } never executed: end of block | 0 | ||||||||||||||||||
1019 | } never executed: end of block | 0 | ||||||||||||||||||
1020 | break; never executed: break; | 0 | ||||||||||||||||||
1021 | } | - | ||||||||||||||||||
1022 | - | |||||||||||||||||||
1023 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
1024 | if (features.testFlag(QOpenGLTexture::TextureArrays)
| 0 | ||||||||||||||||||
1025 | for (int level = 0; level < mipLevels
| 0 | ||||||||||||||||||
1026 | texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1027 | mipLevelSize(level, dimensions[0]), never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1028 | mipLevelSize(level, dimensions[1]), never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1029 | layers, never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1030 | 0, never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1031 | pixelFormat, pixelType, 0); never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1032 | } never executed: else {end of block | 0 | ||||||||||||||||||
1033 | QMessageLogger(__FILE__, 1074, __PRETTY_FUNCTION__).warning("Array textures are not supported"); | - | ||||||||||||||||||
1034 | return; never executed: return; | 0 | ||||||||||||||||||
1035 | } | - | ||||||||||||||||||
1036 | break; never executed: break; | 0 | ||||||||||||||||||
1037 | - | |||||||||||||||||||
1038 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
1039 | - | |||||||||||||||||||
1040 | if (features.testFlag(QOpenGLTexture::TextureCubeMapArrays)
| 0 | ||||||||||||||||||
1041 | for (int level = 0; level < mipLevels
| 0 | ||||||||||||||||||
1042 | texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 6 * layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1043 | mipLevelSize(level, dimensions[0]), never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 6 * layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1044 | mipLevelSize(level, dimensions[1]), never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 6 * layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1045 | 6 * layers, never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 6 * layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1046 | 0, never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 6 * layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1047 | pixelFormat, pixelType, 0); never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), 6 * layers, 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1048 | } never executed: else {end of block | 0 | ||||||||||||||||||
1049 | QMessageLogger(__FILE__, 1090, __PRETTY_FUNCTION__).warning("Cubemap Array textures are not supported"); | - | ||||||||||||||||||
1050 | return; never executed: return; | 0 | ||||||||||||||||||
1051 | } | - | ||||||||||||||||||
1052 | break; never executed: break; | 0 | ||||||||||||||||||
1053 | - | |||||||||||||||||||
1054 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
1055 | if (features.testFlag(QOpenGLTexture::Texture3D)
| 0 | ||||||||||||||||||
1056 | for (int level = 0; level < mipLevels
| 0 | ||||||||||||||||||
1057 | texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), mipLevelSize(level, dimensions[2]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1058 | mipLevelSize(level, dimensions[0]), never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), mipLevelSize(level, dimensions[2]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1059 | mipLevelSize(level, dimensions[1]), never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), mipLevelSize(level, dimensions[2]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1060 | mipLevelSize(level, dimensions[2]), never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), mipLevelSize(level, dimensions[2]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1061 | 0, never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), mipLevelSize(level, dimensions[2]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1062 | pixelFormat, pixelType, 0); never executed: texFuncs->glTextureImage3D(textureId, target, bindingTarget, level, format, mipLevelSize(level, dimensions[0]), mipLevelSize(level, dimensions[1]), mipLevelSize(level, dimensions[2]), 0, pixelFormat, pixelType, 0); | 0 | ||||||||||||||||||
1063 | } never executed: else {end of block | 0 | ||||||||||||||||||
1064 | QMessageLogger(__FILE__, 1105, __PRETTY_FUNCTION__).warning("3D textures are not supported"); | - | ||||||||||||||||||
1065 | return; never executed: return; | 0 | ||||||||||||||||||
1066 | } | - | ||||||||||||||||||
1067 | break; never executed: break; | 0 | ||||||||||||||||||
1068 | - | |||||||||||||||||||
1069 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
1070 | if (features.testFlag(QOpenGLTexture::TextureMultisample)
| 0 | ||||||||||||||||||
1071 | texFuncs->glTextureImage2DMultisample(textureId, target, bindingTarget, samples, format, | - | ||||||||||||||||||
1072 | dimensions[0], dimensions[1], | - | ||||||||||||||||||
1073 | fixedSamplePositions); | - | ||||||||||||||||||
1074 | } never executed: else {end of block | 0 | ||||||||||||||||||
1075 | QMessageLogger(__FILE__, 1116, __PRETTY_FUNCTION__).warning("Multisample textures are not supported"); | - | ||||||||||||||||||
1076 | return; never executed: return; | 0 | ||||||||||||||||||
1077 | } | - | ||||||||||||||||||
1078 | break; never executed: break; | 0 | ||||||||||||||||||
1079 | - | |||||||||||||||||||
1080 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
1081 | if (features.testFlag(QOpenGLTexture::TextureMultisample)
| 0 | ||||||||||||||||||
1082 | && features.testFlag(QOpenGLTexture::TextureArrays)
| 0 | ||||||||||||||||||
1083 | texFuncs->glTextureImage3DMultisample(textureId, target, bindingTarget, samples, format, | - | ||||||||||||||||||
1084 | dimensions[0], dimensions[1], layers, | - | ||||||||||||||||||
1085 | fixedSamplePositions); | - | ||||||||||||||||||
1086 | } never executed: else {end of block | 0 | ||||||||||||||||||
1087 | QMessageLogger(__FILE__, 1128, __PRETTY_FUNCTION__).warning("Multisample array textures are not supported"); | - | ||||||||||||||||||
1088 | return; never executed: return; | 0 | ||||||||||||||||||
1089 | } | - | ||||||||||||||||||
1090 | break; never executed: break; | 0 | ||||||||||||||||||
1091 | } | - | ||||||||||||||||||
1092 | - | |||||||||||||||||||
1093 | storageAllocated = true; | - | ||||||||||||||||||
1094 | } never executed: end of block | 0 | ||||||||||||||||||
1095 | - | |||||||||||||||||||
1096 | void QOpenGLTexturePrivate::allocateImmutableStorage() | - | ||||||||||||||||||
1097 | { | - | ||||||||||||||||||
1098 | switch (target) { | - | ||||||||||||||||||
1099 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
1100 | - | |||||||||||||||||||
1101 | QMessageLogger(__FILE__, 1142, __PRETTY_FUNCTION__).warning("Buffer textures do not allocate storage"); | - | ||||||||||||||||||
1102 | return; never executed: return; | 0 | ||||||||||||||||||
1103 | - | |||||||||||||||||||
1104 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
1105 | if (features.testFlag(QOpenGLTexture::Texture1D)
| 0 | ||||||||||||||||||
1106 | texFuncs->glTextureStorage1D(textureId, target, bindingTarget, mipLevels, format, | - | ||||||||||||||||||
1107 | dimensions[0]); | - | ||||||||||||||||||
1108 | } never executed: else {end of block | 0 | ||||||||||||||||||
1109 | QMessageLogger(__FILE__, 1150, __PRETTY_FUNCTION__).warning("1D textures are not supported"); | - | ||||||||||||||||||
1110 | return; never executed: return; | 0 | ||||||||||||||||||
1111 | } | - | ||||||||||||||||||
1112 | break; never executed: break; | 0 | ||||||||||||||||||
1113 | - | |||||||||||||||||||
1114 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
1115 | if (features.testFlag(QOpenGLTexture::Texture1D)
| 0 | ||||||||||||||||||
1116 | && features.testFlag(QOpenGLTexture::TextureArrays)
| 0 | ||||||||||||||||||
1117 | texFuncs->glTextureStorage2D(textureId, target, bindingTarget, mipLevels, format, | - | ||||||||||||||||||
1118 | dimensions[0], layers); | - | ||||||||||||||||||
1119 | } never executed: else {end of block | 0 | ||||||||||||||||||
1120 | QMessageLogger(__FILE__, 1161, __PRETTY_FUNCTION__).warning("1D array textures are not supported"); | - | ||||||||||||||||||
1121 | return; never executed: return; | 0 | ||||||||||||||||||
1122 | } | - | ||||||||||||||||||
1123 | break; never executed: break; | 0 | ||||||||||||||||||
1124 | - | |||||||||||||||||||
1125 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
1126 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
1127 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
1128 | texFuncs->glTextureStorage2D(textureId, target, bindingTarget, mipLevels, format, | - | ||||||||||||||||||
1129 | dimensions[0], dimensions[1]); | - | ||||||||||||||||||
1130 | break; never executed: break; | 0 | ||||||||||||||||||
1131 | - | |||||||||||||||||||
1132 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
1133 | if (features.testFlag(QOpenGLTexture::TextureArrays)
| 0 | ||||||||||||||||||
1134 | texFuncs->glTextureStorage3D(textureId, target, bindingTarget, mipLevels, format, | - | ||||||||||||||||||
1135 | dimensions[0], dimensions[1], layers); | - | ||||||||||||||||||
1136 | } never executed: else {end of block | 0 | ||||||||||||||||||
1137 | QMessageLogger(__FILE__, 1178, __PRETTY_FUNCTION__).warning("Array textures are not supported"); | - | ||||||||||||||||||
1138 | return; never executed: return; | 0 | ||||||||||||||||||
1139 | } | - | ||||||||||||||||||
1140 | break; never executed: break; | 0 | ||||||||||||||||||
1141 | - | |||||||||||||||||||
1142 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
1143 | - | |||||||||||||||||||
1144 | if (features.testFlag(QOpenGLTexture::TextureCubeMapArrays)
| 0 | ||||||||||||||||||
1145 | texFuncs->glTextureStorage3D(textureId, target, bindingTarget, mipLevels, format, | - | ||||||||||||||||||
1146 | dimensions[0], dimensions[1], 6 * layers); | - | ||||||||||||||||||
1147 | } never executed: else {end of block | 0 | ||||||||||||||||||
1148 | QMessageLogger(__FILE__, 1189, __PRETTY_FUNCTION__).warning("Cubemap Array textures are not supported"); | - | ||||||||||||||||||
1149 | return; never executed: return; | 0 | ||||||||||||||||||
1150 | } | - | ||||||||||||||||||
1151 | break; never executed: break; | 0 | ||||||||||||||||||
1152 | - | |||||||||||||||||||
1153 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
1154 | if (features.testFlag(QOpenGLTexture::Texture3D)
| 0 | ||||||||||||||||||
1155 | texFuncs->glTextureStorage3D(textureId, target, bindingTarget, mipLevels, format, | - | ||||||||||||||||||
1156 | dimensions[0], dimensions[1], dimensions[2]); | - | ||||||||||||||||||
1157 | } never executed: else {end of block | 0 | ||||||||||||||||||
1158 | QMessageLogger(__FILE__, 1199, __PRETTY_FUNCTION__).warning("3D textures are not supported"); | - | ||||||||||||||||||
1159 | return; never executed: return; | 0 | ||||||||||||||||||
1160 | } | - | ||||||||||||||||||
1161 | break; never executed: break; | 0 | ||||||||||||||||||
1162 | - | |||||||||||||||||||
1163 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
1164 | if (features.testFlag(QOpenGLTexture::ImmutableMultisampleStorage)
| 0 | ||||||||||||||||||
1165 | texFuncs->glTextureStorage2DMultisample(textureId, target, bindingTarget, samples, format, | - | ||||||||||||||||||
1166 | dimensions[0], dimensions[1], | - | ||||||||||||||||||
1167 | fixedSamplePositions); | - | ||||||||||||||||||
1168 | } never executed: else {end of block | 0 | ||||||||||||||||||
1169 | QMessageLogger(__FILE__, 1210, __PRETTY_FUNCTION__).warning("Multisample textures are not supported"); | - | ||||||||||||||||||
1170 | return; never executed: return; | 0 | ||||||||||||||||||
1171 | } | - | ||||||||||||||||||
1172 | break; never executed: break; | 0 | ||||||||||||||||||
1173 | - | |||||||||||||||||||
1174 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
1175 | if (features.testFlag(QOpenGLTexture::ImmutableMultisampleStorage)
| 0 | ||||||||||||||||||
1176 | && features.testFlag(QOpenGLTexture::TextureArrays)
| 0 | ||||||||||||||||||
1177 | texFuncs->glTextureStorage3DMultisample(textureId, target, bindingTarget, samples, format, | - | ||||||||||||||||||
1178 | dimensions[0], dimensions[1], layers, | - | ||||||||||||||||||
1179 | fixedSamplePositions); | - | ||||||||||||||||||
1180 | } never executed: else {end of block | 0 | ||||||||||||||||||
1181 | QMessageLogger(__FILE__, 1222, __PRETTY_FUNCTION__).warning("Multisample array textures are not supported"); | - | ||||||||||||||||||
1182 | return; never executed: return; | 0 | ||||||||||||||||||
1183 | } | - | ||||||||||||||||||
1184 | break; never executed: break; | 0 | ||||||||||||||||||
1185 | } | - | ||||||||||||||||||
1186 | - | |||||||||||||||||||
1187 | storageAllocated = true; | - | ||||||||||||||||||
1188 | } never executed: end of block | 0 | ||||||||||||||||||
1189 | - | |||||||||||||||||||
1190 | void QOpenGLTexturePrivate::setData(int mipLevel, int layer, QOpenGLTexture::CubeMapFace cubeFace, | - | ||||||||||||||||||
1191 | QOpenGLTexture::PixelFormat sourceFormat, QOpenGLTexture::PixelType sourceType, | - | ||||||||||||||||||
1192 | const void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
1193 | { | - | ||||||||||||||||||
1194 | switch (target) { | - | ||||||||||||||||||
1195 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
1196 | (void)layer;; | - | ||||||||||||||||||
1197 | (void)cubeFace;; | - | ||||||||||||||||||
1198 | texFuncs->glTextureSubImage1D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1199 | 0, mipLevelSize( mipLevel, dimensions[0] ), | - | ||||||||||||||||||
1200 | sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
1201 | break; never executed: break; | 0 | ||||||||||||||||||
1202 | - | |||||||||||||||||||
1203 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
1204 | (void)cubeFace;; | - | ||||||||||||||||||
1205 | texFuncs->glTextureSubImage2D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1206 | 0, layer, | - | ||||||||||||||||||
1207 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1208 | 1, | - | ||||||||||||||||||
1209 | sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
1210 | break; never executed: break; | 0 | ||||||||||||||||||
1211 | - | |||||||||||||||||||
1212 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
1213 | (void)layer;; | - | ||||||||||||||||||
1214 | (void)cubeFace;; | - | ||||||||||||||||||
1215 | texFuncs->glTextureSubImage2D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1216 | 0, 0, | - | ||||||||||||||||||
1217 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1218 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1219 | sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
1220 | break; never executed: break; | 0 | ||||||||||||||||||
1221 | - | |||||||||||||||||||
1222 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
1223 | (void)cubeFace;; | - | ||||||||||||||||||
1224 | texFuncs->glTextureSubImage3D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1225 | 0, 0, layer, | - | ||||||||||||||||||
1226 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1227 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1228 | 1, | - | ||||||||||||||||||
1229 | sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
1230 | break; never executed: break; | 0 | ||||||||||||||||||
1231 | - | |||||||||||||||||||
1232 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
1233 | (void)cubeFace;; | - | ||||||||||||||||||
1234 | texFuncs->glTextureSubImage3D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1235 | 0, 0, layer, | - | ||||||||||||||||||
1236 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1237 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1238 | mipLevelSize(mipLevel, dimensions[2]), | - | ||||||||||||||||||
1239 | sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
1240 | break; never executed: break; | 0 | ||||||||||||||||||
1241 | - | |||||||||||||||||||
1242 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
1243 | (void)layer;; | - | ||||||||||||||||||
1244 | texFuncs->glTextureSubImage2D(textureId, cubeFace, bindingTarget, mipLevel, | - | ||||||||||||||||||
1245 | 0, 0, | - | ||||||||||||||||||
1246 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1247 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1248 | sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
1249 | break; never executed: break; | 0 | ||||||||||||||||||
1250 | - | |||||||||||||||||||
1251 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: {case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
1252 | int faceIndex = cubeFace - QOpenGLTexture::CubeMapPositiveX; | - | ||||||||||||||||||
1253 | int layerFace = 6 * layer + faceIndex; | - | ||||||||||||||||||
1254 | texFuncs->glTextureSubImage3D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1255 | 0, 0, layerFace, | - | ||||||||||||||||||
1256 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1257 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1258 | 1, | - | ||||||||||||||||||
1259 | sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
1260 | break; never executed: break; | 0 | ||||||||||||||||||
1261 | } | - | ||||||||||||||||||
1262 | - | |||||||||||||||||||
1263 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
1264 | (void)mipLevel;; | - | ||||||||||||||||||
1265 | (void)layer;; | - | ||||||||||||||||||
1266 | (void)cubeFace;; | - | ||||||||||||||||||
1267 | texFuncs->glTextureSubImage2D(textureId, target, bindingTarget, 0, | - | ||||||||||||||||||
1268 | 0, 0, | - | ||||||||||||||||||
1269 | dimensions[0], | - | ||||||||||||||||||
1270 | dimensions[1], | - | ||||||||||||||||||
1271 | sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
1272 | break; never executed: break; | 0 | ||||||||||||||||||
1273 | - | |||||||||||||||||||
1274 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
1275 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
1276 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
1277 | - | |||||||||||||||||||
1278 | QMessageLogger(__FILE__, 1319, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setData(): Texture target does not support pixel data upload"); | - | ||||||||||||||||||
1279 | break; never executed: break; | 0 | ||||||||||||||||||
1280 | } | - | ||||||||||||||||||
1281 | - | |||||||||||||||||||
1282 | - | |||||||||||||||||||
1283 | if (mipLevel == 0
| 0 | ||||||||||||||||||
1284 | QOpenGLTexture * const q = q_func(); | - | ||||||||||||||||||
1285 | q->generateMipMaps(); | - | ||||||||||||||||||
1286 | } never executed: end of block | 0 | ||||||||||||||||||
1287 | } never executed: end of block | 0 | ||||||||||||||||||
1288 | - | |||||||||||||||||||
1289 | void QOpenGLTexturePrivate::setCompressedData(int mipLevel, int layer, QOpenGLTexture::CubeMapFace cubeFace, | - | ||||||||||||||||||
1290 | int dataSize, const void *data, | - | ||||||||||||||||||
1291 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
1292 | { | - | ||||||||||||||||||
1293 | if (!isCompressedFormat(format)
| 0 | ||||||||||||||||||
1294 | QMessageLogger(__FILE__, 1335, __PRETTY_FUNCTION__).warning("Cannot set compressed data for non-compressed format 0x%x", format); | - | ||||||||||||||||||
1295 | return; never executed: return; | 0 | ||||||||||||||||||
1296 | } | - | ||||||||||||||||||
1297 | - | |||||||||||||||||||
1298 | const bool needsFullSpec = !isUsingImmutableStorage(); | - | ||||||||||||||||||
1299 | - | |||||||||||||||||||
1300 | switch (target) { | - | ||||||||||||||||||
1301 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
1302 | (void)layer;; | - | ||||||||||||||||||
1303 | (void)cubeFace;; | - | ||||||||||||||||||
1304 | if (needsFullSpec
| 0 | ||||||||||||||||||
1305 | texFuncs->glCompressedTextureImage1D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1306 | format, | - | ||||||||||||||||||
1307 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1308 | 0, dataSize, data, options); | - | ||||||||||||||||||
1309 | } never executed: else {end of block | 0 | ||||||||||||||||||
1310 | texFuncs->glCompressedTextureSubImage1D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1311 | 0, mipLevelSize( mipLevel, dimensions[0] ), | - | ||||||||||||||||||
1312 | format, dataSize, data, options); | - | ||||||||||||||||||
1313 | } never executed: end of block | 0 | ||||||||||||||||||
1314 | break; never executed: break; | 0 | ||||||||||||||||||
1315 | - | |||||||||||||||||||
1316 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
1317 | (void)cubeFace;; | - | ||||||||||||||||||
1318 | if (!needsFullSpec
| 0 | ||||||||||||||||||
1319 | texFuncs->glCompressedTextureSubImage2D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1320 | 0, layer, | - | ||||||||||||||||||
1321 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1322 | 1, | - | ||||||||||||||||||
1323 | format, dataSize, data, options); | - | ||||||||||||||||||
1324 | } never executed: end of block | 0 | ||||||||||||||||||
1325 | break; never executed: break; | 0 | ||||||||||||||||||
1326 | - | |||||||||||||||||||
1327 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
1328 | (void)layer;; | - | ||||||||||||||||||
1329 | (void)cubeFace;; | - | ||||||||||||||||||
1330 | if (needsFullSpec
| 0 | ||||||||||||||||||
1331 | texFuncs->glCompressedTextureImage2D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1332 | format, | - | ||||||||||||||||||
1333 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1334 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1335 | 0, dataSize, data, options); | - | ||||||||||||||||||
1336 | } never executed: else {end of block | 0 | ||||||||||||||||||
1337 | texFuncs->glCompressedTextureSubImage2D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1338 | 0, 0, | - | ||||||||||||||||||
1339 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1340 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1341 | format, dataSize, data, options); | - | ||||||||||||||||||
1342 | } never executed: end of block | 0 | ||||||||||||||||||
1343 | break; never executed: break; | 0 | ||||||||||||||||||
1344 | - | |||||||||||||||||||
1345 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
1346 | (void)cubeFace;; | - | ||||||||||||||||||
1347 | if (!needsFullSpec
| 0 | ||||||||||||||||||
1348 | texFuncs->glCompressedTextureSubImage3D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1349 | 0, 0, layer, | - | ||||||||||||||||||
1350 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1351 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1352 | 1, | - | ||||||||||||||||||
1353 | format, dataSize, data, options); | - | ||||||||||||||||||
1354 | } never executed: end of block | 0 | ||||||||||||||||||
1355 | break; never executed: break; | 0 | ||||||||||||||||||
1356 | - | |||||||||||||||||||
1357 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
1358 | (void)cubeFace;; | - | ||||||||||||||||||
1359 | if (needsFullSpec
| 0 | ||||||||||||||||||
1360 | texFuncs->glCompressedTextureImage3D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1361 | format, | - | ||||||||||||||||||
1362 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1363 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1364 | mipLevelSize(mipLevel, dimensions[2]), | - | ||||||||||||||||||
1365 | 0, dataSize, data, options); | - | ||||||||||||||||||
1366 | } never executed: else {end of block | 0 | ||||||||||||||||||
1367 | texFuncs->glCompressedTextureSubImage3D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1368 | 0, 0, layer, | - | ||||||||||||||||||
1369 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1370 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1371 | mipLevelSize(mipLevel, dimensions[2]), | - | ||||||||||||||||||
1372 | format, dataSize, data, options); | - | ||||||||||||||||||
1373 | } never executed: end of block | 0 | ||||||||||||||||||
1374 | break; never executed: break; | 0 | ||||||||||||||||||
1375 | - | |||||||||||||||||||
1376 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
1377 | (void)layer;; | - | ||||||||||||||||||
1378 | if (needsFullSpec
| 0 | ||||||||||||||||||
1379 | texFuncs->glCompressedTextureImage2D(textureId, cubeFace, bindingTarget, mipLevel, | - | ||||||||||||||||||
1380 | format, | - | ||||||||||||||||||
1381 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1382 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1383 | 0, dataSize, data, options); | - | ||||||||||||||||||
1384 | } never executed: else {end of block | 0 | ||||||||||||||||||
1385 | texFuncs->glCompressedTextureSubImage2D(textureId, cubeFace, bindingTarget, mipLevel, | - | ||||||||||||||||||
1386 | 0, 0, | - | ||||||||||||||||||
1387 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1388 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1389 | format, dataSize, data, options); | - | ||||||||||||||||||
1390 | } never executed: end of block | 0 | ||||||||||||||||||
1391 | break; never executed: break; | 0 | ||||||||||||||||||
1392 | - | |||||||||||||||||||
1393 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: {case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
1394 | int faceIndex = cubeFace - QOpenGLTexture::CubeMapPositiveX; | - | ||||||||||||||||||
1395 | int layerFace = 6 * layer + faceIndex; | - | ||||||||||||||||||
1396 | if (!needsFullSpec
| 0 | ||||||||||||||||||
1397 | texFuncs->glCompressedTextureSubImage3D(textureId, target, bindingTarget, mipLevel, | - | ||||||||||||||||||
1398 | 0, 0, layerFace, | - | ||||||||||||||||||
1399 | mipLevelSize(mipLevel, dimensions[0]), | - | ||||||||||||||||||
1400 | mipLevelSize(mipLevel, dimensions[1]), | - | ||||||||||||||||||
1401 | 1, | - | ||||||||||||||||||
1402 | format, dataSize, data, options); | - | ||||||||||||||||||
1403 | } never executed: end of block | 0 | ||||||||||||||||||
1404 | break; never executed: break; | 0 | ||||||||||||||||||
1405 | } | - | ||||||||||||||||||
1406 | - | |||||||||||||||||||
1407 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
1408 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
1409 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
1410 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
1411 | - | |||||||||||||||||||
1412 | QMessageLogger(__FILE__, 1453, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setCompressedData(): Texture target does not support pixel data upload"); | - | ||||||||||||||||||
1413 | break; never executed: break; | 0 | ||||||||||||||||||
1414 | } | - | ||||||||||||||||||
1415 | - | |||||||||||||||||||
1416 | - | |||||||||||||||||||
1417 | if (mipLevel == 0
| 0 | ||||||||||||||||||
1418 | QOpenGLTexture * const q = q_func(); | - | ||||||||||||||||||
1419 | q->generateMipMaps(); | - | ||||||||||||||||||
1420 | } never executed: end of block | 0 | ||||||||||||||||||
1421 | } never executed: end of block | 0 | ||||||||||||||||||
1422 | - | |||||||||||||||||||
1423 | void QOpenGLTexturePrivate::setWrapMode(QOpenGLTexture::WrapMode mode) | - | ||||||||||||||||||
1424 | { | - | ||||||||||||||||||
1425 | switch (target) { | - | ||||||||||||||||||
1426 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
1427 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
1428 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
1429 | wrapModes[0] = mode; | - | ||||||||||||||||||
1430 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x2802, mode); | - | ||||||||||||||||||
1431 | break; never executed: break; | 0 | ||||||||||||||||||
1432 | - | |||||||||||||||||||
1433 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
1434 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
1435 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
1436 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
1437 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
1438 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
1439 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
1440 | wrapModes[0] = wrapModes[1] = mode; | - | ||||||||||||||||||
1441 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x2802, mode); | - | ||||||||||||||||||
1442 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x2803, mode); | - | ||||||||||||||||||
1443 | break; never executed: break; | 0 | ||||||||||||||||||
1444 | - | |||||||||||||||||||
1445 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
1446 | wrapModes[0] = wrapModes[1] = wrapModes[2] = mode; | - | ||||||||||||||||||
1447 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x2802, mode); | - | ||||||||||||||||||
1448 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x2803, mode); | - | ||||||||||||||||||
1449 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x8072, mode); | - | ||||||||||||||||||
1450 | break; never executed: break; | 0 | ||||||||||||||||||
1451 | } | - | ||||||||||||||||||
1452 | } never executed: end of block | 0 | ||||||||||||||||||
1453 | - | |||||||||||||||||||
1454 | void QOpenGLTexturePrivate::setWrapMode(QOpenGLTexture::CoordinateDirection direction, QOpenGLTexture::WrapMode mode) | - | ||||||||||||||||||
1455 | { | - | ||||||||||||||||||
1456 | switch (target) { | - | ||||||||||||||||||
1457 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
1458 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
1459 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
1460 | switch (direction) { | - | ||||||||||||||||||
1461 | case never executed: QOpenGLTexture::DirectionS:case QOpenGLTexture::DirectionS: never executed: case QOpenGLTexture::DirectionS: | 0 | ||||||||||||||||||
1462 | wrapModes[0] = mode; | - | ||||||||||||||||||
1463 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x2802, mode); | - | ||||||||||||||||||
1464 | break; never executed: break; | 0 | ||||||||||||||||||
1465 | - | |||||||||||||||||||
1466 | case never executed: QOpenGLTexture::DirectionT:case QOpenGLTexture::DirectionT: never executed: case QOpenGLTexture::DirectionT: | 0 | ||||||||||||||||||
1467 | case never executed: QOpenGLTexture::DirectionR:case QOpenGLTexture::DirectionR: never executed: case QOpenGLTexture::DirectionR: | 0 | ||||||||||||||||||
1468 | QMessageLogger(__FILE__, 1509, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setWrapMode() direction not valid for this texture target"); | - | ||||||||||||||||||
1469 | break; never executed: break; | 0 | ||||||||||||||||||
1470 | } | - | ||||||||||||||||||
1471 | break; never executed: break; | 0 | ||||||||||||||||||
1472 | - | |||||||||||||||||||
1473 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
1474 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
1475 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
1476 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
1477 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
1478 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
1479 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
1480 | switch (direction) { | - | ||||||||||||||||||
1481 | case never executed: QOpenGLTexture::DirectionS:case QOpenGLTexture::DirectionS: never executed: case QOpenGLTexture::DirectionS: | 0 | ||||||||||||||||||
1482 | wrapModes[0] = mode; | - | ||||||||||||||||||
1483 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x2802, mode); | - | ||||||||||||||||||
1484 | break; never executed: break; | 0 | ||||||||||||||||||
1485 | - | |||||||||||||||||||
1486 | case never executed: QOpenGLTexture::DirectionT:case QOpenGLTexture::DirectionT: never executed: case QOpenGLTexture::DirectionT: | 0 | ||||||||||||||||||
1487 | wrapModes[1] = mode; | - | ||||||||||||||||||
1488 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, 0x2803, mode); | - | ||||||||||||||||||
1489 | break; never executed: break; | 0 | ||||||||||||||||||
1490 | - | |||||||||||||||||||
1491 | case never executed: QOpenGLTexture::DirectionR:case QOpenGLTexture::DirectionR: never executed: case QOpenGLTexture::DirectionR: | 0 | ||||||||||||||||||
1492 | QMessageLogger(__FILE__, 1533, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setWrapMode() direction not valid for this texture target"); | - | ||||||||||||||||||
1493 | break; never executed: break; | 0 | ||||||||||||||||||
1494 | } | - | ||||||||||||||||||
1495 | break; never executed: break; | 0 | ||||||||||||||||||
1496 | - | |||||||||||||||||||
1497 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
1498 | switch (direction) { | - | ||||||||||||||||||
1499 | case never executed: QOpenGLTexture::DirectionS:case QOpenGLTexture::DirectionS: never executed: case QOpenGLTexture::DirectionS: | 0 | ||||||||||||||||||
1500 | wrapModes[0] = mode; | - | ||||||||||||||||||
1501 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, direction, mode); | - | ||||||||||||||||||
1502 | break; never executed: break; | 0 | ||||||||||||||||||
1503 | - | |||||||||||||||||||
1504 | case never executed: QOpenGLTexture::DirectionT:case QOpenGLTexture::DirectionT: never executed: case QOpenGLTexture::DirectionT: | 0 | ||||||||||||||||||
1505 | wrapModes[1] = mode; | - | ||||||||||||||||||
1506 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, direction, mode); | - | ||||||||||||||||||
1507 | break; never executed: break; | 0 | ||||||||||||||||||
1508 | - | |||||||||||||||||||
1509 | case never executed: QOpenGLTexture::DirectionR:case QOpenGLTexture::DirectionR: never executed: case QOpenGLTexture::DirectionR: | 0 | ||||||||||||||||||
1510 | wrapModes[2] = mode; | - | ||||||||||||||||||
1511 | texFuncs->glTextureParameteri(textureId, target, bindingTarget, direction, mode); | - | ||||||||||||||||||
1512 | break; never executed: break; | 0 | ||||||||||||||||||
1513 | } | - | ||||||||||||||||||
1514 | break; never executed: break; | 0 | ||||||||||||||||||
1515 | } | - | ||||||||||||||||||
1516 | } never executed: end of block | 0 | ||||||||||||||||||
1517 | - | |||||||||||||||||||
1518 | QOpenGLTexture::WrapMode QOpenGLTexturePrivate::wrapMode(QOpenGLTexture::CoordinateDirection direction) const | - | ||||||||||||||||||
1519 | { | - | ||||||||||||||||||
1520 | switch (target) { | - | ||||||||||||||||||
1521 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
1522 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
1523 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
1524 | switch (direction) { | - | ||||||||||||||||||
1525 | case never executed: QOpenGLTexture::DirectionS:case QOpenGLTexture::DirectionS: never executed: case QOpenGLTexture::DirectionS: | 0 | ||||||||||||||||||
1526 | return never executed: wrapModes[0];return wrapModes[0]; never executed: return wrapModes[0]; | 0 | ||||||||||||||||||
1527 | - | |||||||||||||||||||
1528 | case never executed: QOpenGLTexture::DirectionT:case QOpenGLTexture::DirectionT: never executed: case QOpenGLTexture::DirectionT: | 0 | ||||||||||||||||||
1529 | case never executed: QOpenGLTexture::DirectionR:case QOpenGLTexture::DirectionR: never executed: case QOpenGLTexture::DirectionR: | 0 | ||||||||||||||||||
1530 | QMessageLogger(__FILE__, 1571, __PRETTY_FUNCTION__).warning("QOpenGLTexture::wrapMode() direction not valid for this texture target"); | - | ||||||||||||||||||
1531 | return never executed: QOpenGLTexture::Repeat;return QOpenGLTexture::Repeat; never executed: return QOpenGLTexture::Repeat; | 0 | ||||||||||||||||||
1532 | } | - | ||||||||||||||||||
1533 | break; never executed: break; | 0 | ||||||||||||||||||
1534 | - | |||||||||||||||||||
1535 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
1536 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
1537 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
1538 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
1539 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
1540 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
1541 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
1542 | switch (direction) { | - | ||||||||||||||||||
1543 | case never executed: QOpenGLTexture::DirectionS:case QOpenGLTexture::DirectionS: never executed: case QOpenGLTexture::DirectionS: | 0 | ||||||||||||||||||
1544 | return never executed: wrapModes[0];return wrapModes[0]; never executed: return wrapModes[0]; | 0 | ||||||||||||||||||
1545 | - | |||||||||||||||||||
1546 | case never executed: QOpenGLTexture::DirectionT:case QOpenGLTexture::DirectionT: never executed: case QOpenGLTexture::DirectionT: | 0 | ||||||||||||||||||
1547 | return never executed: wrapModes[1];return wrapModes[1]; never executed: return wrapModes[1]; | 0 | ||||||||||||||||||
1548 | - | |||||||||||||||||||
1549 | case never executed: QOpenGLTexture::DirectionR:case QOpenGLTexture::DirectionR: never executed: case QOpenGLTexture::DirectionR: | 0 | ||||||||||||||||||
1550 | QMessageLogger(__FILE__, 1591, __PRETTY_FUNCTION__).warning("QOpenGLTexture::wrapMode() direction not valid for this texture target"); | - | ||||||||||||||||||
1551 | return never executed: QOpenGLTexture::Repeat;return QOpenGLTexture::Repeat; never executed: return QOpenGLTexture::Repeat; | 0 | ||||||||||||||||||
1552 | } | - | ||||||||||||||||||
1553 | break; never executed: break; | 0 | ||||||||||||||||||
1554 | - | |||||||||||||||||||
1555 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
1556 | switch (direction) { | - | ||||||||||||||||||
1557 | case never executed: QOpenGLTexture::DirectionS:case QOpenGLTexture::DirectionS: never executed: case QOpenGLTexture::DirectionS: | 0 | ||||||||||||||||||
1558 | return never executed: wrapModes[0];return wrapModes[0]; never executed: return wrapModes[0]; | 0 | ||||||||||||||||||
1559 | - | |||||||||||||||||||
1560 | case never executed: QOpenGLTexture::DirectionT:case QOpenGLTexture::DirectionT: never executed: case QOpenGLTexture::DirectionT: | 0 | ||||||||||||||||||
1561 | return never executed: wrapModes[1];return wrapModes[1]; never executed: return wrapModes[1]; | 0 | ||||||||||||||||||
1562 | - | |||||||||||||||||||
1563 | case never executed: QOpenGLTexture::DirectionR:case QOpenGLTexture::DirectionR: never executed: case QOpenGLTexture::DirectionR: | 0 | ||||||||||||||||||
1564 | return never executed: wrapModes[2];return wrapModes[2]; never executed: return wrapModes[2]; | 0 | ||||||||||||||||||
1565 | } | - | ||||||||||||||||||
1566 | break; never executed: break; | 0 | ||||||||||||||||||
1567 | } | - | ||||||||||||||||||
1568 | - | |||||||||||||||||||
1569 | ((!(false)) ? qt_assert("false",__FILE__,1610) : qt_noop()); | - | ||||||||||||||||||
1570 | return never executed: QOpenGLTexture::Repeat;return QOpenGLTexture::Repeat; never executed: return QOpenGLTexture::Repeat; | 0 | ||||||||||||||||||
1571 | } | - | ||||||||||||||||||
1572 | - | |||||||||||||||||||
1573 | QOpenGLTexture *QOpenGLTexturePrivate::createTextureView(QOpenGLTexture::Target viewTarget, | - | ||||||||||||||||||
1574 | QOpenGLTexture::TextureFormat viewFormat, | - | ||||||||||||||||||
1575 | int minimumMipmapLevel, int maximumMipmapLevel, | - | ||||||||||||||||||
1576 | int minimumLayer, int maximumLayer) const | - | ||||||||||||||||||
1577 | { | - | ||||||||||||||||||
1578 | - | |||||||||||||||||||
1579 | - | |||||||||||||||||||
1580 | - | |||||||||||||||||||
1581 | bool viewTargetCompatible = false; | - | ||||||||||||||||||
1582 | switch (target) { | - | ||||||||||||||||||
1583 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
1584 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
1585 | viewTargetCompatible = (viewTarget == QOpenGLTexture::Target1D
| 0 | ||||||||||||||||||
1586 | || viewTarget == QOpenGLTexture::Target1DArray
| 0 | ||||||||||||||||||
1587 | break; never executed: break; | 0 | ||||||||||||||||||
1588 | - | |||||||||||||||||||
1589 | - | |||||||||||||||||||
1590 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
1591 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
1592 | viewTargetCompatible = (viewTarget == QOpenGLTexture::Target2D
| 0 | ||||||||||||||||||
1593 | || viewTarget == QOpenGLTexture::Target2DArray
| 0 | ||||||||||||||||||
1594 | break; never executed: break; | 0 | ||||||||||||||||||
1595 | - | |||||||||||||||||||
1596 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
1597 | viewTargetCompatible = (viewTarget == QOpenGLTexture::Target3D); | - | ||||||||||||||||||
1598 | break; never executed: break; | 0 | ||||||||||||||||||
1599 | - | |||||||||||||||||||
1600 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
1601 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
1602 | viewTargetCompatible = (viewTarget == QOpenGLTexture::TargetCubeMap
| 0 | ||||||||||||||||||
1603 | || viewTarget == QOpenGLTexture::Target2D
| 0 | ||||||||||||||||||
1604 | || viewTarget == QOpenGLTexture::Target2DArray
| 0 | ||||||||||||||||||
1605 | || viewTarget == QOpenGLTexture::TargetCubeMapArray
| 0 | ||||||||||||||||||
1606 | break; never executed: break; | 0 | ||||||||||||||||||
1607 | - | |||||||||||||||||||
1608 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
1609 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
1610 | viewTargetCompatible = (viewTarget == QOpenGLTexture::Target2DMultisample
| 0 | ||||||||||||||||||
1611 | || viewTarget == QOpenGLTexture::Target2DMultisampleArray
| 0 | ||||||||||||||||||
1612 | break; never executed: break; | 0 | ||||||||||||||||||
1613 | - | |||||||||||||||||||
1614 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
1615 | viewTargetCompatible = (viewTarget == QOpenGLTexture::TargetRectangle); | - | ||||||||||||||||||
1616 | break; never executed: break; | 0 | ||||||||||||||||||
1617 | - | |||||||||||||||||||
1618 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
1619 | - | |||||||||||||||||||
1620 | break; never executed: break; | 0 | ||||||||||||||||||
1621 | } | - | ||||||||||||||||||
1622 | - | |||||||||||||||||||
1623 | if (!viewTargetCompatible
| 0 | ||||||||||||||||||
1624 | QMessageLogger(__FILE__, 1665, __PRETTY_FUNCTION__).warning("QOpenGLTexture::createTextureView(): Incompatible source and view targets"); | - | ||||||||||||||||||
1625 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
1626 | } | - | ||||||||||||||||||
1627 | - | |||||||||||||||||||
1628 | - | |||||||||||||||||||
1629 | bool viewFormatCompatible = false; | - | ||||||||||||||||||
1630 | switch (formatClass) { | - | ||||||||||||||||||
1631 | case never executed: QOpenGLTexture::NoFormatClass:case QOpenGLTexture::NoFormatClass: never executed: case QOpenGLTexture::NoFormatClass: | 0 | ||||||||||||||||||
1632 | break; never executed: break; | 0 | ||||||||||||||||||
1633 | - | |||||||||||||||||||
1634 | case never executed: QOpenGLTexture::FormatClass_128Bit:case QOpenGLTexture::FormatClass_128Bit: never executed: case QOpenGLTexture::FormatClass_128Bit: | 0 | ||||||||||||||||||
1635 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGBA32F
| 0 | ||||||||||||||||||
1636 | || viewFormat == QOpenGLTexture::RGBA32U
| 0 | ||||||||||||||||||
1637 | || viewFormat == QOpenGLTexture::RGBA32I
| 0 | ||||||||||||||||||
1638 | break; never executed: break; | 0 | ||||||||||||||||||
1639 | - | |||||||||||||||||||
1640 | case never executed: QOpenGLTexture::FormatClass_96Bit:case QOpenGLTexture::FormatClass_96Bit: never executed: case QOpenGLTexture::FormatClass_96Bit: | 0 | ||||||||||||||||||
1641 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGB32F
| 0 | ||||||||||||||||||
1642 | || viewFormat == QOpenGLTexture::RGB32U
| 0 | ||||||||||||||||||
1643 | || viewFormat == QOpenGLTexture::RGB32I
| 0 | ||||||||||||||||||
1644 | break; never executed: break; | 0 | ||||||||||||||||||
1645 | - | |||||||||||||||||||
1646 | case never executed: QOpenGLTexture::FormatClass_64Bit:case QOpenGLTexture::FormatClass_64Bit: never executed: case QOpenGLTexture::FormatClass_64Bit: | 0 | ||||||||||||||||||
1647 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGBA16F
| 0 | ||||||||||||||||||
1648 | || viewFormat == QOpenGLTexture::RG32F
| 0 | ||||||||||||||||||
1649 | || viewFormat == QOpenGLTexture::RGBA16U
| 0 | ||||||||||||||||||
1650 | || viewFormat == QOpenGLTexture::RG32U
| 0 | ||||||||||||||||||
1651 | || viewFormat == QOpenGLTexture::RGBA16I
| 0 | ||||||||||||||||||
1652 | || viewFormat == QOpenGLTexture::RG32I
| 0 | ||||||||||||||||||
1653 | || viewFormat == QOpenGLTexture::RGBA16_UNorm
| 0 | ||||||||||||||||||
1654 | || viewFormat == QOpenGLTexture::RGBA16_SNorm
| 0 | ||||||||||||||||||
1655 | break; never executed: break; | 0 | ||||||||||||||||||
1656 | - | |||||||||||||||||||
1657 | case never executed: QOpenGLTexture::FormatClass_48Bit:case QOpenGLTexture::FormatClass_48Bit: never executed: case QOpenGLTexture::FormatClass_48Bit: | 0 | ||||||||||||||||||
1658 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGB16_UNorm
| 0 | ||||||||||||||||||
1659 | || viewFormat == QOpenGLTexture::RGB16_SNorm
| 0 | ||||||||||||||||||
1660 | || viewFormat == QOpenGLTexture::RGB16F
| 0 | ||||||||||||||||||
1661 | || viewFormat == QOpenGLTexture::RGB16U
| 0 | ||||||||||||||||||
1662 | || viewFormat == QOpenGLTexture::RGB16I
| 0 | ||||||||||||||||||
1663 | break; never executed: break; | 0 | ||||||||||||||||||
1664 | - | |||||||||||||||||||
1665 | case never executed: QOpenGLTexture::FormatClass_32Bit:case QOpenGLTexture::FormatClass_32Bit: never executed: case QOpenGLTexture::FormatClass_32Bit: | 0 | ||||||||||||||||||
1666 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RG16F
| 0 | ||||||||||||||||||
1667 | || viewFormat == QOpenGLTexture::RG11B10F
| 0 | ||||||||||||||||||
1668 | || viewFormat == QOpenGLTexture::R32F
| 0 | ||||||||||||||||||
1669 | || viewFormat == QOpenGLTexture::RGB10A2
| 0 | ||||||||||||||||||
1670 | || viewFormat == QOpenGLTexture::RGBA8U
| 0 | ||||||||||||||||||
1671 | || viewFormat == QOpenGLTexture::RG16U
| 0 | ||||||||||||||||||
1672 | || viewFormat == QOpenGLTexture::R32U
| 0 | ||||||||||||||||||
1673 | || viewFormat == QOpenGLTexture::RGBA8I
| 0 | ||||||||||||||||||
1674 | || viewFormat == QOpenGLTexture::RG16I
| 0 | ||||||||||||||||||
1675 | || viewFormat == QOpenGLTexture::R32I
| 0 | ||||||||||||||||||
1676 | || viewFormat == QOpenGLTexture::RGBA8_UNorm
| 0 | ||||||||||||||||||
1677 | || viewFormat == QOpenGLTexture::RG16_UNorm
| 0 | ||||||||||||||||||
1678 | || viewFormat == QOpenGLTexture::RGBA8_SNorm
| 0 | ||||||||||||||||||
1679 | || viewFormat == QOpenGLTexture::RG16_SNorm
| 0 | ||||||||||||||||||
1680 | || viewFormat == QOpenGLTexture::SRGB8_Alpha8
| 0 | ||||||||||||||||||
1681 | || viewFormat == QOpenGLTexture::RGB9E5
| 0 | ||||||||||||||||||
1682 | break; never executed: break; | 0 | ||||||||||||||||||
1683 | - | |||||||||||||||||||
1684 | case never executed: QOpenGLTexture::FormatClass_24Bit:case QOpenGLTexture::FormatClass_24Bit: never executed: case QOpenGLTexture::FormatClass_24Bit: | 0 | ||||||||||||||||||
1685 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGB8_UNorm
| 0 | ||||||||||||||||||
1686 | || viewFormat == QOpenGLTexture::RGB8_SNorm
| 0 | ||||||||||||||||||
1687 | || viewFormat == QOpenGLTexture::SRGB8
| 0 | ||||||||||||||||||
1688 | || viewFormat == QOpenGLTexture::RGB8U
| 0 | ||||||||||||||||||
1689 | || viewFormat == QOpenGLTexture::RGB8I
| 0 | ||||||||||||||||||
1690 | break; never executed: break; | 0 | ||||||||||||||||||
1691 | - | |||||||||||||||||||
1692 | case never executed: QOpenGLTexture::FormatClass_16Bit:case QOpenGLTexture::FormatClass_16Bit: never executed: case QOpenGLTexture::FormatClass_16Bit: | 0 | ||||||||||||||||||
1693 | viewFormatCompatible = (viewFormat == QOpenGLTexture::R16F
| 0 | ||||||||||||||||||
1694 | || viewFormat == QOpenGLTexture::RG8U
| 0 | ||||||||||||||||||
1695 | || viewFormat == QOpenGLTexture::R16U
| 0 | ||||||||||||||||||
1696 | || viewFormat == QOpenGLTexture::RG8I
| 0 | ||||||||||||||||||
1697 | || viewFormat == QOpenGLTexture::R16I
| 0 | ||||||||||||||||||
1698 | || viewFormat == QOpenGLTexture::RG8_UNorm
| 0 | ||||||||||||||||||
1699 | || viewFormat == QOpenGLTexture::R16_UNorm
| 0 | ||||||||||||||||||
1700 | || viewFormat == QOpenGLTexture::RG8_SNorm
| 0 | ||||||||||||||||||
1701 | || viewFormat == QOpenGLTexture::R16_SNorm
| 0 | ||||||||||||||||||
1702 | break; never executed: break; | 0 | ||||||||||||||||||
1703 | - | |||||||||||||||||||
1704 | case never executed: QOpenGLTexture::FormatClass_8Bit:case QOpenGLTexture::FormatClass_8Bit: never executed: case QOpenGLTexture::FormatClass_8Bit: | 0 | ||||||||||||||||||
1705 | viewFormatCompatible = (viewFormat == QOpenGLTexture::R8U
| 0 | ||||||||||||||||||
1706 | || viewFormat == QOpenGLTexture::R8I
| 0 | ||||||||||||||||||
1707 | || viewFormat == QOpenGLTexture::R8_UNorm
| 0 | ||||||||||||||||||
1708 | || viewFormat == QOpenGLTexture::R8_SNorm
| 0 | ||||||||||||||||||
1709 | break; never executed: break; | 0 | ||||||||||||||||||
1710 | - | |||||||||||||||||||
1711 | case never executed: QOpenGLTexture::FormatClass_RGTC1_R:case QOpenGLTexture::FormatClass_RGTC1_R: never executed: case QOpenGLTexture::FormatClass_RGTC1_R: | 0 | ||||||||||||||||||
1712 | viewFormatCompatible = (viewFormat == QOpenGLTexture::R_ATI1N_UNorm
| 0 | ||||||||||||||||||
1713 | || viewFormat == QOpenGLTexture::R_ATI1N_SNorm
| 0 | ||||||||||||||||||
1714 | break; never executed: break; | 0 | ||||||||||||||||||
1715 | - | |||||||||||||||||||
1716 | case never executed: QOpenGLTexture::FormatClass_RGTC2_RG:case QOpenGLTexture::FormatClass_RGTC2_RG: never executed: case QOpenGLTexture::FormatClass_RGTC2_RG: | 0 | ||||||||||||||||||
1717 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RG_ATI2N_UNorm
| 0 | ||||||||||||||||||
1718 | || viewFormat == QOpenGLTexture::RG_ATI2N_SNorm
| 0 | ||||||||||||||||||
1719 | break; never executed: break; | 0 | ||||||||||||||||||
1720 | - | |||||||||||||||||||
1721 | case never executed: QOpenGLTexture::FormatClass_BPTC_Unorm:case QOpenGLTexture::FormatClass_BPTC_Unorm: never executed: case QOpenGLTexture::FormatClass_BPTC_Unorm: | 0 | ||||||||||||||||||
1722 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGB_BP_UNorm
| 0 | ||||||||||||||||||
1723 | || viewFormat == QOpenGLTexture::SRGB_BP_UNorm
| 0 | ||||||||||||||||||
1724 | break; never executed: break; | 0 | ||||||||||||||||||
1725 | - | |||||||||||||||||||
1726 | case never executed: QOpenGLTexture::FormatClass_BPTC_Float:case QOpenGLTexture::FormatClass_BPTC_Float: never executed: case QOpenGLTexture::FormatClass_BPTC_Float: | 0 | ||||||||||||||||||
1727 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT
| 0 | ||||||||||||||||||
1728 | || viewFormat == QOpenGLTexture::RGB_BP_SIGNED_FLOAT
| 0 | ||||||||||||||||||
1729 | break; never executed: break; | 0 | ||||||||||||||||||
1730 | - | |||||||||||||||||||
1731 | case never executed: QOpenGLTexture::FormatClass_S3TC_DXT1_RGB:case QOpenGLTexture::FormatClass_S3TC_DXT1_RGB: never executed: case QOpenGLTexture::FormatClass_S3TC_DXT1_RGB: | 0 | ||||||||||||||||||
1732 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGB_DXT1
| 0 | ||||||||||||||||||
1733 | || viewFormat == QOpenGLTexture::SRGB_DXT1
| 0 | ||||||||||||||||||
1734 | break; never executed: break; | 0 | ||||||||||||||||||
1735 | - | |||||||||||||||||||
1736 | case never executed: QOpenGLTexture::FormatClass_S3TC_DXT1_RGBA:case QOpenGLTexture::FormatClass_S3TC_DXT1_RGBA: never executed: case QOpenGLTexture::FormatClass_S3TC_DXT1_RGBA: | 0 | ||||||||||||||||||
1737 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGBA_DXT1
| 0 | ||||||||||||||||||
1738 | || viewFormat == QOpenGLTexture::SRGB_Alpha_DXT1
| 0 | ||||||||||||||||||
1739 | break; never executed: break; | 0 | ||||||||||||||||||
1740 | - | |||||||||||||||||||
1741 | case never executed: QOpenGLTexture::FormatClass_S3TC_DXT3_RGBA:case QOpenGLTexture::FormatClass_S3TC_DXT3_RGBA: never executed: case QOpenGLTexture::FormatClass_S3TC_DXT3_RGBA: | 0 | ||||||||||||||||||
1742 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGBA_DXT3
| 0 | ||||||||||||||||||
1743 | || viewFormat == QOpenGLTexture::SRGB_Alpha_DXT3
| 0 | ||||||||||||||||||
1744 | break; never executed: break; | 0 | ||||||||||||||||||
1745 | - | |||||||||||||||||||
1746 | case never executed: QOpenGLTexture::FormatClass_S3TC_DXT5_RGBA:case QOpenGLTexture::FormatClass_S3TC_DXT5_RGBA: never executed: case QOpenGLTexture::FormatClass_S3TC_DXT5_RGBA: | 0 | ||||||||||||||||||
1747 | viewFormatCompatible = (viewFormat == QOpenGLTexture::RGBA_DXT5
| 0 | ||||||||||||||||||
1748 | || viewFormat == QOpenGLTexture::SRGB_Alpha_DXT5
| 0 | ||||||||||||||||||
1749 | break; never executed: break; | 0 | ||||||||||||||||||
1750 | - | |||||||||||||||||||
1751 | case never executed: QOpenGLTexture::FormatClass_Unique:case QOpenGLTexture::FormatClass_Unique: never executed: case QOpenGLTexture::FormatClass_Unique: | 0 | ||||||||||||||||||
1752 | viewFormatCompatible = (viewFormat == format); | - | ||||||||||||||||||
1753 | break; never executed: break; | 0 | ||||||||||||||||||
1754 | } | - | ||||||||||||||||||
1755 | - | |||||||||||||||||||
1756 | if (!viewFormatCompatible
| 0 | ||||||||||||||||||
1757 | QMessageLogger(__FILE__, 1798, __PRETTY_FUNCTION__).warning("QOpenGLTexture::createTextureView(): Incompatible source and view formats"); | - | ||||||||||||||||||
1758 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
1759 | } | - | ||||||||||||||||||
1760 | - | |||||||||||||||||||
1761 | - | |||||||||||||||||||
1762 | - | |||||||||||||||||||
1763 | QOpenGLTexture *view = new QOpenGLTexture(viewTarget); | - | ||||||||||||||||||
1764 | view->setFormat(viewFormat); | - | ||||||||||||||||||
1765 | view->create(); | - | ||||||||||||||||||
1766 | view->d_ptr->textureView = true; | - | ||||||||||||||||||
1767 | texFuncs->glTextureView(view->textureId(), viewTarget, textureId, viewFormat, | - | ||||||||||||||||||
1768 | minimumMipmapLevel, maximumMipmapLevel - minimumMipmapLevel + 1, | - | ||||||||||||||||||
1769 | minimumLayer, maximumLayer - minimumLayer + 1); | - | ||||||||||||||||||
1770 | return never executed: view;return view; never executed: return view; | 0 | ||||||||||||||||||
1771 | } | - | ||||||||||||||||||
1772 | QOpenGLTexture::QOpenGLTexture(Target target) | - | ||||||||||||||||||
1773 | : d_ptr(new QOpenGLTexturePrivate(target, this)) | - | ||||||||||||||||||
1774 | { | - | ||||||||||||||||||
1775 | } never executed: end of block | 0 | ||||||||||||||||||
1776 | QOpenGLTexture::QOpenGLTexture(const QImage& image, MipMapGeneration genMipMaps) | - | ||||||||||||||||||
1777 | : d_ptr(new QOpenGLTexturePrivate(QOpenGLTexture::Target2D, this)) | - | ||||||||||||||||||
1778 | { | - | ||||||||||||||||||
1779 | setData(image, genMipMaps); | - | ||||||||||||||||||
1780 | } never executed: end of block | 0 | ||||||||||||||||||
1781 | - | |||||||||||||||||||
1782 | QOpenGLTexture::~QOpenGLTexture() | - | ||||||||||||||||||
1783 | { | - | ||||||||||||||||||
1784 | } | - | ||||||||||||||||||
1785 | - | |||||||||||||||||||
1786 | - | |||||||||||||||||||
1787 | - | |||||||||||||||||||
1788 | - | |||||||||||||||||||
1789 | - | |||||||||||||||||||
1790 | - | |||||||||||||||||||
1791 | QOpenGLTexture::Target QOpenGLTexture::target() const | - | ||||||||||||||||||
1792 | { | - | ||||||||||||||||||
1793 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1794 | return never executed: d->target;return d->target; never executed: return d->target; | 0 | ||||||||||||||||||
1795 | } | - | ||||||||||||||||||
1796 | bool QOpenGLTexture::create() | - | ||||||||||||||||||
1797 | { | - | ||||||||||||||||||
1798 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1799 | return never executed: d->create();return d->create(); never executed: return d->create(); | 0 | ||||||||||||||||||
1800 | } | - | ||||||||||||||||||
1801 | - | |||||||||||||||||||
1802 | - | |||||||||||||||||||
1803 | - | |||||||||||||||||||
1804 | - | |||||||||||||||||||
1805 | - | |||||||||||||||||||
1806 | - | |||||||||||||||||||
1807 | - | |||||||||||||||||||
1808 | void QOpenGLTexture::destroy() | - | ||||||||||||||||||
1809 | { | - | ||||||||||||||||||
1810 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1811 | return never executed: d->destroy();return d->destroy(); never executed: return d->destroy(); | 0 | ||||||||||||||||||
1812 | } | - | ||||||||||||||||||
1813 | - | |||||||||||||||||||
1814 | - | |||||||||||||||||||
1815 | - | |||||||||||||||||||
1816 | - | |||||||||||||||||||
1817 | - | |||||||||||||||||||
1818 | - | |||||||||||||||||||
1819 | bool QOpenGLTexture::isCreated() const | - | ||||||||||||||||||
1820 | { | - | ||||||||||||||||||
1821 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1822 | return never executed: d->textureId != 0;return d->textureId != 0; never executed: return d->textureId != 0; | 0 | ||||||||||||||||||
1823 | } | - | ||||||||||||||||||
1824 | - | |||||||||||||||||||
1825 | - | |||||||||||||||||||
1826 | - | |||||||||||||||||||
1827 | - | |||||||||||||||||||
1828 | - | |||||||||||||||||||
1829 | - | |||||||||||||||||||
1830 | - | |||||||||||||||||||
1831 | GLuint QOpenGLTexture::textureId() const | - | ||||||||||||||||||
1832 | { | - | ||||||||||||||||||
1833 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1834 | return never executed: d->textureId;return d->textureId; never executed: return d->textureId; | 0 | ||||||||||||||||||
1835 | } | - | ||||||||||||||||||
1836 | void QOpenGLTexture::bind() | - | ||||||||||||||||||
1837 | { | - | ||||||||||||||||||
1838 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1839 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,2300) : qt_noop()); | - | ||||||||||||||||||
1840 | d->bind(); | - | ||||||||||||||||||
1841 | } never executed: end of block | 0 | ||||||||||||||||||
1842 | void QOpenGLTexture::bind(uint unit, TextureUnitReset reset) | - | ||||||||||||||||||
1843 | { | - | ||||||||||||||||||
1844 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1845 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,2319) : qt_noop()); | - | ||||||||||||||||||
1846 | d->bind(unit, reset); | - | ||||||||||||||||||
1847 | } never executed: end of block | 0 | ||||||||||||||||||
1848 | - | |||||||||||||||||||
1849 | - | |||||||||||||||||||
1850 | - | |||||||||||||||||||
1851 | - | |||||||||||||||||||
1852 | - | |||||||||||||||||||
1853 | - | |||||||||||||||||||
1854 | void QOpenGLTexture::release() | - | ||||||||||||||||||
1855 | { | - | ||||||||||||||||||
1856 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1857 | d->release(); | - | ||||||||||||||||||
1858 | } never executed: end of block | 0 | ||||||||||||||||||
1859 | void QOpenGLTexture::release(uint unit, TextureUnitReset reset) | - | ||||||||||||||||||
1860 | { | - | ||||||||||||||||||
1861 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1862 | d->release(unit, reset); | - | ||||||||||||||||||
1863 | } never executed: end of block | 0 | ||||||||||||||||||
1864 | - | |||||||||||||||||||
1865 | - | |||||||||||||||||||
1866 | - | |||||||||||||||||||
1867 | - | |||||||||||||||||||
1868 | - | |||||||||||||||||||
1869 | - | |||||||||||||||||||
1870 | - | |||||||||||||||||||
1871 | bool QOpenGLTexture::isBound() const | - | ||||||||||||||||||
1872 | { | - | ||||||||||||||||||
1873 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1874 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,2356) : qt_noop()); | - | ||||||||||||||||||
1875 | return never executed: d->isBound();return d->isBound(); never executed: return d->isBound(); | 0 | ||||||||||||||||||
1876 | } | - | ||||||||||||||||||
1877 | - | |||||||||||||||||||
1878 | - | |||||||||||||||||||
1879 | - | |||||||||||||||||||
1880 | - | |||||||||||||||||||
1881 | - | |||||||||||||||||||
1882 | - | |||||||||||||||||||
1883 | - | |||||||||||||||||||
1884 | bool QOpenGLTexture::isBound(uint unit) | - | ||||||||||||||||||
1885 | { | - | ||||||||||||||||||
1886 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1887 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,2369) : qt_noop()); | - | ||||||||||||||||||
1888 | return never executed: d->isBound(unit);return d->isBound(unit); never executed: return d->isBound(unit); | 0 | ||||||||||||||||||
1889 | } | - | ||||||||||||||||||
1890 | - | |||||||||||||||||||
1891 | - | |||||||||||||||||||
1892 | - | |||||||||||||||||||
1893 | - | |||||||||||||||||||
1894 | - | |||||||||||||||||||
1895 | GLuint QOpenGLTexture::boundTextureId(BindingTarget target) | - | ||||||||||||||||||
1896 | { | - | ||||||||||||||||||
1897 | QOpenGLContext *ctx = QOpenGLContext::currentContext(); | - | ||||||||||||||||||
1898 | if (!ctx
| 0 | ||||||||||||||||||
1899 | QMessageLogger(__FILE__, 2381, __PRETTY_FUNCTION__).warning("QOpenGLTexture::boundTextureId() requires a valid current context"); | - | ||||||||||||||||||
1900 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
1901 | } | - | ||||||||||||||||||
1902 | - | |||||||||||||||||||
1903 | GLint textureId = 0; | - | ||||||||||||||||||
1904 | ctx->functions()->glGetIntegerv(target, &textureId); | - | ||||||||||||||||||
1905 | return never executed: static_cast<GLuint>(textureId);return static_cast<GLuint>(textureId); never executed: return static_cast<GLuint>(textureId); | 0 | ||||||||||||||||||
1906 | } | - | ||||||||||||||||||
1907 | - | |||||||||||||||||||
1908 | - | |||||||||||||||||||
1909 | - | |||||||||||||||||||
1910 | - | |||||||||||||||||||
1911 | - | |||||||||||||||||||
1912 | GLuint QOpenGLTexture::boundTextureId(uint unit, BindingTarget target) | - | ||||||||||||||||||
1913 | { | - | ||||||||||||||||||
1914 | QOpenGLContext *ctx = QOpenGLContext::currentContext(); | - | ||||||||||||||||||
1915 | if (!ctx
| 0 | ||||||||||||||||||
1916 | QMessageLogger(__FILE__, 2398, __PRETTY_FUNCTION__).warning("QOpenGLTexture::boundTextureId() requires a valid current context"); | - | ||||||||||||||||||
1917 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
1918 | } | - | ||||||||||||||||||
1919 | - | |||||||||||||||||||
1920 | QOpenGLFunctions *funcs = ctx->functions(); | - | ||||||||||||||||||
1921 | funcs->initializeOpenGLFunctions(); | - | ||||||||||||||||||
1922 | - | |||||||||||||||||||
1923 | GLint oldTextureUnit = 0; | - | ||||||||||||||||||
1924 | funcs->glGetIntegerv(0x84E0, &oldTextureUnit); | - | ||||||||||||||||||
1925 | - | |||||||||||||||||||
1926 | funcs->glActiveTexture(unit); | - | ||||||||||||||||||
1927 | GLint textureId = 0; | - | ||||||||||||||||||
1928 | funcs->glGetIntegerv(target, &textureId); | - | ||||||||||||||||||
1929 | funcs->glActiveTexture(oldTextureUnit); | - | ||||||||||||||||||
1930 | - | |||||||||||||||||||
1931 | return never executed: static_cast<GLuint>(textureId);return static_cast<GLuint>(textureId); never executed: return static_cast<GLuint>(textureId); | 0 | ||||||||||||||||||
1932 | } | - | ||||||||||||||||||
1933 | void QOpenGLTexture::setFormat(TextureFormat format) | - | ||||||||||||||||||
1934 | { | - | ||||||||||||||||||
1935 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
1936 | d->create(); | - | ||||||||||||||||||
1937 | if (isStorageAllocated()
| 0 | ||||||||||||||||||
1938 | QMessageLogger(__FILE__, 2430, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setFormat(): Cannot change format once storage has been allocated"); | - | ||||||||||||||||||
1939 | return; never executed: return; | 0 | ||||||||||||||||||
1940 | } | - | ||||||||||||||||||
1941 | - | |||||||||||||||||||
1942 | d->format = format; | - | ||||||||||||||||||
1943 | - | |||||||||||||||||||
1944 | switch (format) { | - | ||||||||||||||||||
1945 | case never executed: NoFormat:case NoFormat: never executed: case NoFormat: | 0 | ||||||||||||||||||
1946 | d->formatClass = NoFormatClass; | - | ||||||||||||||||||
1947 | break; never executed: break; | 0 | ||||||||||||||||||
1948 | - | |||||||||||||||||||
1949 | case never executed: RGBA32F:case RGBA32F: never executed: case RGBA32F: | 0 | ||||||||||||||||||
1950 | case never executed: RGBA32U:case RGBA32U: never executed: case RGBA32U: | 0 | ||||||||||||||||||
1951 | case never executed: RGBA32I:case RGBA32I: never executed: case RGBA32I: | 0 | ||||||||||||||||||
1952 | d->formatClass = FormatClass_128Bit; | - | ||||||||||||||||||
1953 | break; never executed: break; | 0 | ||||||||||||||||||
1954 | - | |||||||||||||||||||
1955 | case never executed: RGB32F:case RGB32F: never executed: case RGB32F: | 0 | ||||||||||||||||||
1956 | case never executed: RGB32U:case RGB32U: never executed: case RGB32U: | 0 | ||||||||||||||||||
1957 | case never executed: RGB32I:case RGB32I: never executed: case RGB32I: | 0 | ||||||||||||||||||
1958 | d->formatClass = FormatClass_96Bit; | - | ||||||||||||||||||
1959 | break; never executed: break; | 0 | ||||||||||||||||||
1960 | - | |||||||||||||||||||
1961 | case never executed: RGBA16F:case RGBA16F: never executed: case RGBA16F: | 0 | ||||||||||||||||||
1962 | case never executed: RG32F:case RG32F: never executed: case RG32F: | 0 | ||||||||||||||||||
1963 | case never executed: RGBA16U:case RGBA16U: never executed: case RGBA16U: | 0 | ||||||||||||||||||
1964 | case never executed: RG32U:case RG32U: never executed: case RG32U: | 0 | ||||||||||||||||||
1965 | case never executed: RGBA16I:case RGBA16I: never executed: case RGBA16I: | 0 | ||||||||||||||||||
1966 | case never executed: RG32I:case RG32I: never executed: case RG32I: | 0 | ||||||||||||||||||
1967 | case never executed: RGBA16_UNorm:case RGBA16_UNorm: never executed: case RGBA16_UNorm: | 0 | ||||||||||||||||||
1968 | case never executed: RGBA16_SNorm:case RGBA16_SNorm: never executed: case RGBA16_SNorm: | 0 | ||||||||||||||||||
1969 | d->formatClass = FormatClass_64Bit; | - | ||||||||||||||||||
1970 | break; never executed: break; | 0 | ||||||||||||||||||
1971 | - | |||||||||||||||||||
1972 | case never executed: RGB16_UNorm:case RGB16_UNorm: never executed: case RGB16_UNorm: | 0 | ||||||||||||||||||
1973 | case never executed: RGB16_SNorm:case RGB16_SNorm: never executed: case RGB16_SNorm: | 0 | ||||||||||||||||||
1974 | case never executed: RGB16F:case RGB16F: never executed: case RGB16F: | 0 | ||||||||||||||||||
1975 | case never executed: RGB16U:case RGB16U: never executed: case RGB16U: | 0 | ||||||||||||||||||
1976 | case never executed: RGB16I:case RGB16I: never executed: case RGB16I: | 0 | ||||||||||||||||||
1977 | d->formatClass = FormatClass_48Bit; | - | ||||||||||||||||||
1978 | break; never executed: break; | 0 | ||||||||||||||||||
1979 | - | |||||||||||||||||||
1980 | case never executed: RG16F:case RG16F: never executed: case RG16F: | 0 | ||||||||||||||||||
1981 | case never executed: RG11B10F:case RG11B10F: never executed: case RG11B10F: | 0 | ||||||||||||||||||
1982 | case never executed: R32F:case R32F: never executed: case R32F: | 0 | ||||||||||||||||||
1983 | case never executed: RGB10A2:case RGB10A2: never executed: case RGB10A2: | 0 | ||||||||||||||||||
1984 | case never executed: RGBA8U:case RGBA8U: never executed: case RGBA8U: | 0 | ||||||||||||||||||
1985 | case never executed: RG16U:case RG16U: never executed: case RG16U: | 0 | ||||||||||||||||||
1986 | case never executed: R32U:case R32U: never executed: case R32U: | 0 | ||||||||||||||||||
1987 | case never executed: RGBA8I:case RGBA8I: never executed: case RGBA8I: | 0 | ||||||||||||||||||
1988 | case never executed: RG16I:case RG16I: never executed: case RG16I: | 0 | ||||||||||||||||||
1989 | case never executed: R32I:case R32I: never executed: case R32I: | 0 | ||||||||||||||||||
1990 | case never executed: RGBA8_UNorm:case RGBA8_UNorm: never executed: case RGBA8_UNorm: | 0 | ||||||||||||||||||
1991 | case never executed: RG16_UNorm:case RG16_UNorm: never executed: case RG16_UNorm: | 0 | ||||||||||||||||||
1992 | case never executed: RGBA8_SNorm:case RGBA8_SNorm: never executed: case RGBA8_SNorm: | 0 | ||||||||||||||||||
1993 | case never executed: RG16_SNorm:case RG16_SNorm: never executed: case RG16_SNorm: | 0 | ||||||||||||||||||
1994 | case never executed: SRGB8_Alpha8:case SRGB8_Alpha8: never executed: case SRGB8_Alpha8: | 0 | ||||||||||||||||||
1995 | case never executed: RGB9E5:case RGB9E5: never executed: case RGB9E5: | 0 | ||||||||||||||||||
1996 | d->formatClass = FormatClass_32Bit; | - | ||||||||||||||||||
1997 | break; never executed: break; | 0 | ||||||||||||||||||
1998 | - | |||||||||||||||||||
1999 | case never executed: RGB8_UNorm:case RGB8_UNorm: never executed: case RGB8_UNorm: | 0 | ||||||||||||||||||
2000 | case never executed: RGB8_SNorm:case RGB8_SNorm: never executed: case RGB8_SNorm: | 0 | ||||||||||||||||||
2001 | case never executed: SRGB8:case SRGB8: never executed: case SRGB8: | 0 | ||||||||||||||||||
2002 | case never executed: RGB8U:case RGB8U: never executed: case RGB8U: | 0 | ||||||||||||||||||
2003 | case never executed: RGB8I:case RGB8I: never executed: case RGB8I: | 0 | ||||||||||||||||||
2004 | d->formatClass = FormatClass_24Bit; | - | ||||||||||||||||||
2005 | break; never executed: break; | 0 | ||||||||||||||||||
2006 | - | |||||||||||||||||||
2007 | case never executed: R16F:case R16F: never executed: case R16F: | 0 | ||||||||||||||||||
2008 | case never executed: RG8U:case RG8U: never executed: case RG8U: | 0 | ||||||||||||||||||
2009 | case never executed: R16U:case R16U: never executed: case R16U: | 0 | ||||||||||||||||||
2010 | case never executed: RG8I:case RG8I: never executed: case RG8I: | 0 | ||||||||||||||||||
2011 | case never executed: R16I:case R16I: never executed: case R16I: | 0 | ||||||||||||||||||
2012 | case never executed: RG8_UNorm:case RG8_UNorm: never executed: case RG8_UNorm: | 0 | ||||||||||||||||||
2013 | case never executed: R16_UNorm:case R16_UNorm: never executed: case R16_UNorm: | 0 | ||||||||||||||||||
2014 | case never executed: RG8_SNorm:case RG8_SNorm: never executed: case RG8_SNorm: | 0 | ||||||||||||||||||
2015 | case never executed: R16_SNorm:case R16_SNorm: never executed: case R16_SNorm: | 0 | ||||||||||||||||||
2016 | d->formatClass = FormatClass_16Bit; | - | ||||||||||||||||||
2017 | break; never executed: break; | 0 | ||||||||||||||||||
2018 | - | |||||||||||||||||||
2019 | case never executed: R8U:case R8U: never executed: case R8U: | 0 | ||||||||||||||||||
2020 | case never executed: R8I:case R8I: never executed: case R8I: | 0 | ||||||||||||||||||
2021 | case never executed: R8_UNorm:case R8_UNorm: never executed: case R8_UNorm: | 0 | ||||||||||||||||||
2022 | case never executed: R8_SNorm:case R8_SNorm: never executed: case R8_SNorm: | 0 | ||||||||||||||||||
2023 | d->formatClass = FormatClass_8Bit; | - | ||||||||||||||||||
2024 | break; never executed: break; | 0 | ||||||||||||||||||
2025 | - | |||||||||||||||||||
2026 | case never executed: R_ATI1N_UNorm:case R_ATI1N_UNorm: never executed: case R_ATI1N_UNorm: | 0 | ||||||||||||||||||
2027 | case never executed: R_ATI1N_SNorm:case R_ATI1N_SNorm: never executed: case R_ATI1N_SNorm: | 0 | ||||||||||||||||||
2028 | d->formatClass = FormatClass_RGTC1_R; | - | ||||||||||||||||||
2029 | break; never executed: break; | 0 | ||||||||||||||||||
2030 | - | |||||||||||||||||||
2031 | case never executed: RG_ATI2N_UNorm:case RG_ATI2N_UNorm: never executed: case RG_ATI2N_UNorm: | 0 | ||||||||||||||||||
2032 | case never executed: RG_ATI2N_SNorm:case RG_ATI2N_SNorm: never executed: case RG_ATI2N_SNorm: | 0 | ||||||||||||||||||
2033 | d->formatClass = FormatClass_RGTC2_RG; | - | ||||||||||||||||||
2034 | break; never executed: break; | 0 | ||||||||||||||||||
2035 | - | |||||||||||||||||||
2036 | case never executed: RGB_BP_UNorm:case RGB_BP_UNorm: never executed: case RGB_BP_UNorm: | 0 | ||||||||||||||||||
2037 | case never executed: SRGB_BP_UNorm:case SRGB_BP_UNorm: never executed: case SRGB_BP_UNorm: | 0 | ||||||||||||||||||
2038 | d->formatClass = FormatClass_BPTC_Unorm; | - | ||||||||||||||||||
2039 | break; never executed: break; | 0 | ||||||||||||||||||
2040 | - | |||||||||||||||||||
2041 | case never executed: RGB_BP_UNSIGNED_FLOAT:case RGB_BP_UNSIGNED_FLOAT: never executed: case RGB_BP_UNSIGNED_FLOAT: | 0 | ||||||||||||||||||
2042 | case never executed: RGB_BP_SIGNED_FLOAT:case RGB_BP_SIGNED_FLOAT: never executed: case RGB_BP_SIGNED_FLOAT: | 0 | ||||||||||||||||||
2043 | d->formatClass = FormatClass_BPTC_Float; | - | ||||||||||||||||||
2044 | break; never executed: break; | 0 | ||||||||||||||||||
2045 | - | |||||||||||||||||||
2046 | case never executed: RGB_DXT1:case RGB_DXT1: never executed: case RGB_DXT1: | 0 | ||||||||||||||||||
2047 | case never executed: SRGB_DXT1:case SRGB_DXT1: never executed: case SRGB_DXT1: | 0 | ||||||||||||||||||
2048 | d->formatClass = FormatClass_S3TC_DXT1_RGB; | - | ||||||||||||||||||
2049 | break; never executed: break; | 0 | ||||||||||||||||||
2050 | - | |||||||||||||||||||
2051 | case never executed: RGBA_DXT1:case RGBA_DXT1: never executed: case RGBA_DXT1: | 0 | ||||||||||||||||||
2052 | case never executed: SRGB_Alpha_DXT1:case SRGB_Alpha_DXT1: never executed: case SRGB_Alpha_DXT1: | 0 | ||||||||||||||||||
2053 | d->formatClass = FormatClass_S3TC_DXT1_RGBA; | - | ||||||||||||||||||
2054 | break; never executed: break; | 0 | ||||||||||||||||||
2055 | - | |||||||||||||||||||
2056 | case never executed: RGBA_DXT3:case RGBA_DXT3: never executed: case RGBA_DXT3: | 0 | ||||||||||||||||||
2057 | case never executed: SRGB_Alpha_DXT3:case SRGB_Alpha_DXT3: never executed: case SRGB_Alpha_DXT3: | 0 | ||||||||||||||||||
2058 | d->formatClass = FormatClass_S3TC_DXT3_RGBA; | - | ||||||||||||||||||
2059 | break; never executed: break; | 0 | ||||||||||||||||||
2060 | - | |||||||||||||||||||
2061 | case never executed: RGBA_DXT5:case RGBA_DXT5: never executed: case RGBA_DXT5: | 0 | ||||||||||||||||||
2062 | case never executed: SRGB_Alpha_DXT5:case SRGB_Alpha_DXT5: never executed: case SRGB_Alpha_DXT5: | 0 | ||||||||||||||||||
2063 | d->formatClass = FormatClass_S3TC_DXT5_RGBA; | - | ||||||||||||||||||
2064 | break; never executed: break; | 0 | ||||||||||||||||||
2065 | - | |||||||||||||||||||
2066 | case never executed: QOpenGLTexture::R11_EAC_UNorm:case QOpenGLTexture::R11_EAC_UNorm: never executed: case QOpenGLTexture::R11_EAC_UNorm: | 0 | ||||||||||||||||||
2067 | case never executed: QOpenGLTexture::R11_EAC_SNorm:case QOpenGLTexture::R11_EAC_SNorm: never executed: case QOpenGLTexture::R11_EAC_SNorm: | 0 | ||||||||||||||||||
2068 | case never executed: QOpenGLTexture::RG11_EAC_UNorm:case QOpenGLTexture::RG11_EAC_UNorm: never executed: case QOpenGLTexture::RG11_EAC_UNorm: | 0 | ||||||||||||||||||
2069 | case never executed: QOpenGLTexture::RG11_EAC_SNorm:case QOpenGLTexture::RG11_EAC_SNorm: never executed: case QOpenGLTexture::RG11_EAC_SNorm: | 0 | ||||||||||||||||||
2070 | case never executed: QOpenGLTexture::RGB8_ETC2:case QOpenGLTexture::RGB8_ETC2: never executed: case QOpenGLTexture::RGB8_ETC2: | 0 | ||||||||||||||||||
2071 | case never executed: QOpenGLTexture::SRGB8_ETC2:case QOpenGLTexture::SRGB8_ETC2: never executed: case QOpenGLTexture::SRGB8_ETC2: | 0 | ||||||||||||||||||
2072 | case never executed: QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
2073 | case never executed: QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2:case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: never executed: case QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC2: | 0 | ||||||||||||||||||
2074 | case never executed: QOpenGLTexture::RGBA8_ETC2_EAC:case QOpenGLTexture::RGBA8_ETC2_EAC: never executed: case QOpenGLTexture::RGBA8_ETC2_EAC: | 0 | ||||||||||||||||||
2075 | case never executed: QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC:case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: never executed: case QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC: | 0 | ||||||||||||||||||
2076 | case never executed: QOpenGLTexture::RGB8_ETC1:case QOpenGLTexture::RGB8_ETC1: never executed: case QOpenGLTexture::RGB8_ETC1: | 0 | ||||||||||||||||||
2077 | case never executed: RG3B2:case RG3B2: never executed: case RG3B2: | 0 | ||||||||||||||||||
2078 | case never executed: R5G6B5:case R5G6B5: never executed: case R5G6B5: | 0 | ||||||||||||||||||
2079 | case never executed: RGB5A1:case RGB5A1: never executed: case RGB5A1: | 0 | ||||||||||||||||||
2080 | case never executed: RGBA4:case RGBA4: never executed: case RGBA4: | 0 | ||||||||||||||||||
2081 | case never executed: D16:case D16: never executed: case D16: | 0 | ||||||||||||||||||
2082 | case never executed: D24:case D24: never executed: case D24: | 0 | ||||||||||||||||||
2083 | case never executed: D24S8:case D24S8: never executed: case D24S8: | 0 | ||||||||||||||||||
2084 | case never executed: D32:case D32: never executed: case D32: | 0 | ||||||||||||||||||
2085 | case never executed: D32F:case D32F: never executed: case D32F: | 0 | ||||||||||||||||||
2086 | case never executed: D32FS8X24:case D32FS8X24: never executed: case D32FS8X24: | 0 | ||||||||||||||||||
2087 | case never executed: S8:case S8: never executed: case S8: | 0 | ||||||||||||||||||
2088 | case never executed: DepthFormat:case DepthFormat: never executed: case DepthFormat: | 0 | ||||||||||||||||||
2089 | case never executed: AlphaFormat:case AlphaFormat: never executed: case AlphaFormat: | 0 | ||||||||||||||||||
2090 | case never executed: RGBFormat:case RGBFormat: never executed: case RGBFormat: | 0 | ||||||||||||||||||
2091 | case never executed: RGBAFormat:case RGBAFormat: never executed: case RGBAFormat: | 0 | ||||||||||||||||||
2092 | case never executed: LuminanceFormat:case LuminanceFormat: never executed: case LuminanceFormat: | 0 | ||||||||||||||||||
2093 | case never executed: LuminanceAlphaFormat:case LuminanceAlphaFormat: never executed: case LuminanceAlphaFormat: | 0 | ||||||||||||||||||
2094 | d->formatClass = FormatClass_Unique; | - | ||||||||||||||||||
2095 | break; never executed: break; | 0 | ||||||||||||||||||
2096 | } | - | ||||||||||||||||||
2097 | } never executed: end of block | 0 | ||||||||||||||||||
2098 | - | |||||||||||||||||||
2099 | - | |||||||||||||||||||
2100 | - | |||||||||||||||||||
2101 | - | |||||||||||||||||||
2102 | - | |||||||||||||||||||
2103 | - | |||||||||||||||||||
2104 | QOpenGLTexture::TextureFormat QOpenGLTexture::format() const | - | ||||||||||||||||||
2105 | { | - | ||||||||||||||||||
2106 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2107 | return never executed: d->format;return d->format; never executed: return d->format; | 0 | ||||||||||||||||||
2108 | } | - | ||||||||||||||||||
2109 | void QOpenGLTexture::setSize(int width, int height, int depth) | - | ||||||||||||||||||
2110 | { | - | ||||||||||||||||||
2111 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2112 | d->create(); | - | ||||||||||||||||||
2113 | if (isStorageAllocated()
| 0 | ||||||||||||||||||
2114 | QMessageLogger(__FILE__, 2616, __PRETTY_FUNCTION__).warning("Cannot resize a texture that already has storage allocated.\n" | - | ||||||||||||||||||
2115 | "To do so, destroy() the texture and then create() and setSize()"); | - | ||||||||||||||||||
2116 | return; never executed: return; | 0 | ||||||||||||||||||
2117 | } | - | ||||||||||||||||||
2118 | - | |||||||||||||||||||
2119 | switch (d->target) { | - | ||||||||||||||||||
2120 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
2121 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
2122 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
2123 | d->dimensions[0] = width; | - | ||||||||||||||||||
2124 | (void)height;; | - | ||||||||||||||||||
2125 | (void)depth;; | - | ||||||||||||||||||
2126 | break; never executed: break; | 0 | ||||||||||||||||||
2127 | - | |||||||||||||||||||
2128 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
2129 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
2130 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
2131 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
2132 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
2133 | d->dimensions[0] = width; | - | ||||||||||||||||||
2134 | d->dimensions[1] = height; | - | ||||||||||||||||||
2135 | (void)depth;; | - | ||||||||||||||||||
2136 | break; never executed: break; | 0 | ||||||||||||||||||
2137 | - | |||||||||||||||||||
2138 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
2139 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
2140 | if (width != height
| 0 | ||||||||||||||||||
2141 | QMessageLogger(__FILE__, 2643, __PRETTY_FUNCTION__).warning("QAbstractOpenGLTexture::setSize(): Cube map textures must be square"); never executed: QMessageLogger(__FILE__, 2643, __PRETTY_FUNCTION__).warning("QAbstractOpenGLTexture::setSize(): Cube map textures must be square"); | 0 | ||||||||||||||||||
2142 | d->dimensions[0] = d->dimensions[1] = width; | - | ||||||||||||||||||
2143 | (void)depth;; | - | ||||||||||||||||||
2144 | break; never executed: break; | 0 | ||||||||||||||||||
2145 | - | |||||||||||||||||||
2146 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
2147 | d->dimensions[0] = width; | - | ||||||||||||||||||
2148 | d->dimensions[1] = height; | - | ||||||||||||||||||
2149 | d->dimensions[2] = depth; | - | ||||||||||||||||||
2150 | break; never executed: break; | 0 | ||||||||||||||||||
2151 | } | - | ||||||||||||||||||
2152 | } never executed: end of block | 0 | ||||||||||||||||||
2153 | - | |||||||||||||||||||
2154 | - | |||||||||||||||||||
2155 | - | |||||||||||||||||||
2156 | - | |||||||||||||||||||
2157 | - | |||||||||||||||||||
2158 | - | |||||||||||||||||||
2159 | int QOpenGLTexture::width() const | - | ||||||||||||||||||
2160 | { | - | ||||||||||||||||||
2161 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2162 | return never executed: d->dimensions[0];return d->dimensions[0]; never executed: return d->dimensions[0]; | 0 | ||||||||||||||||||
2163 | } | - | ||||||||||||||||||
2164 | - | |||||||||||||||||||
2165 | - | |||||||||||||||||||
2166 | - | |||||||||||||||||||
2167 | - | |||||||||||||||||||
2168 | - | |||||||||||||||||||
2169 | - | |||||||||||||||||||
2170 | int QOpenGLTexture::height() const | - | ||||||||||||||||||
2171 | { | - | ||||||||||||||||||
2172 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2173 | return never executed: d->dimensions[1];return d->dimensions[1]; never executed: return d->dimensions[1]; | 0 | ||||||||||||||||||
2174 | } | - | ||||||||||||||||||
2175 | - | |||||||||||||||||||
2176 | - | |||||||||||||||||||
2177 | - | |||||||||||||||||||
2178 | - | |||||||||||||||||||
2179 | - | |||||||||||||||||||
2180 | - | |||||||||||||||||||
2181 | int QOpenGLTexture::depth() const | - | ||||||||||||||||||
2182 | { | - | ||||||||||||||||||
2183 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2184 | return never executed: d->dimensions[2];return d->dimensions[2]; never executed: return d->dimensions[2]; | 0 | ||||||||||||||||||
2185 | } | - | ||||||||||||||||||
2186 | void QOpenGLTexture::setMipLevels(int levels) | - | ||||||||||||||||||
2187 | { | - | ||||||||||||||||||
2188 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2189 | d->create(); | - | ||||||||||||||||||
2190 | if (isStorageAllocated()
| 0 | ||||||||||||||||||
2191 | QMessageLogger(__FILE__, 2705, __PRETTY_FUNCTION__).warning("Cannot set mip levels on a texture that already has storage allocated.\n" | - | ||||||||||||||||||
2192 | "To do so, destroy() the texture and then create() and setMipLevels()"); | - | ||||||||||||||||||
2193 | return; never executed: return; | 0 | ||||||||||||||||||
2194 | } | - | ||||||||||||||||||
2195 | - | |||||||||||||||||||
2196 | switch (d->target) { | - | ||||||||||||||||||
2197 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
2198 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
2199 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
2200 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
2201 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
2202 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
2203 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
2204 | d->requestedMipLevels = levels; | - | ||||||||||||||||||
2205 | break; never executed: break; | 0 | ||||||||||||||||||
2206 | - | |||||||||||||||||||
2207 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
2208 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
2209 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
2210 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
2211 | QMessageLogger(__FILE__, 2725, __PRETTY_FUNCTION__).warning("QAbstractOpenGLTexture::setMipLevels(): This texture target does not support mipmaps"); | - | ||||||||||||||||||
2212 | break; never executed: break; | 0 | ||||||||||||||||||
2213 | } | - | ||||||||||||||||||
2214 | } never executed: end of block | 0 | ||||||||||||||||||
2215 | int QOpenGLTexture::mipLevels() const | - | ||||||||||||||||||
2216 | { | - | ||||||||||||||||||
2217 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2218 | return never executed: isStorageAllocated()return isStorageAllocated() ? d->mipLevels : d->requestedMipLevels;
never executed: return isStorageAllocated() ? d->mipLevels : d->requestedMipLevels; | 0 | ||||||||||||||||||
2219 | } | - | ||||||||||||||||||
2220 | - | |||||||||||||||||||
2221 | - | |||||||||||||||||||
2222 | - | |||||||||||||||||||
2223 | - | |||||||||||||||||||
2224 | - | |||||||||||||||||||
2225 | - | |||||||||||||||||||
2226 | - | |||||||||||||||||||
2227 | int QOpenGLTexture::maximumMipLevels() const | - | ||||||||||||||||||
2228 | { | - | ||||||||||||||||||
2229 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2230 | return never executed: d->maximumMipLevelCount();return d->maximumMipLevelCount(); never executed: return d->maximumMipLevelCount(); | 0 | ||||||||||||||||||
2231 | } | - | ||||||||||||||||||
2232 | void QOpenGLTexture::setLayers(int layers) | - | ||||||||||||||||||
2233 | { | - | ||||||||||||||||||
2234 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2235 | d->create(); | - | ||||||||||||||||||
2236 | if (isStorageAllocated()
| 0 | ||||||||||||||||||
2237 | QMessageLogger(__FILE__, 2769, __PRETTY_FUNCTION__).warning("Cannot set layers on a texture that already has storage allocated.\n" | - | ||||||||||||||||||
2238 | "To do so, destroy() the texture and then create() and setLayers()"); | - | ||||||||||||||||||
2239 | return; never executed: return; | 0 | ||||||||||||||||||
2240 | } | - | ||||||||||||||||||
2241 | - | |||||||||||||||||||
2242 | switch (d->target) { | - | ||||||||||||||||||
2243 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
2244 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
2245 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
2246 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
2247 | d->layers = layers; | - | ||||||||||||||||||
2248 | break; never executed: break; | 0 | ||||||||||||||||||
2249 | - | |||||||||||||||||||
2250 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
2251 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
2252 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
2253 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
2254 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
2255 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
2256 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
2257 | QMessageLogger(__FILE__, 2789, __PRETTY_FUNCTION__).warning("Texture target does not support array layers"); | - | ||||||||||||||||||
2258 | break; never executed: break; | 0 | ||||||||||||||||||
2259 | } | - | ||||||||||||||||||
2260 | } never executed: end of block | 0 | ||||||||||||||||||
2261 | int QOpenGLTexture::layers() const | - | ||||||||||||||||||
2262 | { | - | ||||||||||||||||||
2263 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2264 | return never executed: d->layers;return d->layers; never executed: return d->layers; | 0 | ||||||||||||||||||
2265 | } | - | ||||||||||||||||||
2266 | - | |||||||||||||||||||
2267 | - | |||||||||||||||||||
2268 | - | |||||||||||||||||||
2269 | - | |||||||||||||||||||
2270 | - | |||||||||||||||||||
2271 | - | |||||||||||||||||||
2272 | - | |||||||||||||||||||
2273 | int QOpenGLTexture::faces() const | - | ||||||||||||||||||
2274 | { | - | ||||||||||||||||||
2275 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2276 | return never executed: d->faces;return d->faces; never executed: return d->faces; | 0 | ||||||||||||||||||
2277 | } | - | ||||||||||||||||||
2278 | void QOpenGLTexture::setSamples(int samples) | - | ||||||||||||||||||
2279 | { | - | ||||||||||||||||||
2280 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2281 | d->create(); | - | ||||||||||||||||||
2282 | if (isStorageAllocated()
| 0 | ||||||||||||||||||
2283 | QMessageLogger(__FILE__, 2837, __PRETTY_FUNCTION__).warning("Cannot set sample count on a texture that already has storage allocated.\n" | - | ||||||||||||||||||
2284 | "To do so, destroy() the texture and then create() and setSamples()"); | - | ||||||||||||||||||
2285 | return; never executed: return; | 0 | ||||||||||||||||||
2286 | } | - | ||||||||||||||||||
2287 | - | |||||||||||||||||||
2288 | switch (d->target) { | - | ||||||||||||||||||
2289 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
2290 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
2291 | d->samples = samples; | - | ||||||||||||||||||
2292 | break; never executed: break; | 0 | ||||||||||||||||||
2293 | - | |||||||||||||||||||
2294 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
2295 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
2296 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
2297 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
2298 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
2299 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
2300 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
2301 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
2302 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
2303 | - | |||||||||||||||||||
2304 | QMessageLogger(__FILE__, 2858, __PRETTY_FUNCTION__).warning("Texture target does not support multisampling"); | - | ||||||||||||||||||
2305 | break; never executed: break; | 0 | ||||||||||||||||||
2306 | } | - | ||||||||||||||||||
2307 | } never executed: end of block | 0 | ||||||||||||||||||
2308 | int QOpenGLTexture::samples() const | - | ||||||||||||||||||
2309 | { | - | ||||||||||||||||||
2310 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2311 | return never executed: d->samples;return d->samples; never executed: return d->samples; | 0 | ||||||||||||||||||
2312 | } | - | ||||||||||||||||||
2313 | void QOpenGLTexture::setFixedSamplePositions(bool fixed) | - | ||||||||||||||||||
2314 | { | - | ||||||||||||||||||
2315 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2316 | d->create(); | - | ||||||||||||||||||
2317 | if (isStorageAllocated()
| 0 | ||||||||||||||||||
2318 | QMessageLogger(__FILE__, 2899, __PRETTY_FUNCTION__).warning("Cannot set sample positions on a texture that already has storage allocated.\n" | - | ||||||||||||||||||
2319 | "To do so, destroy() the texture and then create() and setFixedSamplePositions()"); | - | ||||||||||||||||||
2320 | return; never executed: return; | 0 | ||||||||||||||||||
2321 | } | - | ||||||||||||||||||
2322 | - | |||||||||||||||||||
2323 | switch (d->target) { | - | ||||||||||||||||||
2324 | case never executed: QOpenGLTexture::Target2DMultisample:case QOpenGLTexture::Target2DMultisample: never executed: case QOpenGLTexture::Target2DMultisample: | 0 | ||||||||||||||||||
2325 | case never executed: QOpenGLTexture::Target2DMultisampleArray:case QOpenGLTexture::Target2DMultisampleArray: never executed: case QOpenGLTexture::Target2DMultisampleArray: | 0 | ||||||||||||||||||
2326 | d->fixedSamplePositions = fixed; | - | ||||||||||||||||||
2327 | break; never executed: break; | 0 | ||||||||||||||||||
2328 | - | |||||||||||||||||||
2329 | case never executed: QOpenGLTexture::Target1D:case QOpenGLTexture::Target1D: never executed: case QOpenGLTexture::Target1D: | 0 | ||||||||||||||||||
2330 | case never executed: QOpenGLTexture::Target2D:case QOpenGLTexture::Target2D: never executed: case QOpenGLTexture::Target2D: | 0 | ||||||||||||||||||
2331 | case never executed: QOpenGLTexture::Target3D:case QOpenGLTexture::Target3D: never executed: case QOpenGLTexture::Target3D: | 0 | ||||||||||||||||||
2332 | case never executed: QOpenGLTexture::Target1DArray:case QOpenGLTexture::Target1DArray: never executed: case QOpenGLTexture::Target1DArray: | 0 | ||||||||||||||||||
2333 | case never executed: QOpenGLTexture::Target2DArray:case QOpenGLTexture::Target2DArray: never executed: case QOpenGLTexture::Target2DArray: | 0 | ||||||||||||||||||
2334 | case never executed: QOpenGLTexture::TargetCubeMap:case QOpenGLTexture::TargetCubeMap: never executed: case QOpenGLTexture::TargetCubeMap: | 0 | ||||||||||||||||||
2335 | case never executed: QOpenGLTexture::TargetCubeMapArray:case QOpenGLTexture::TargetCubeMapArray: never executed: case QOpenGLTexture::TargetCubeMapArray: | 0 | ||||||||||||||||||
2336 | case never executed: QOpenGLTexture::TargetBuffer:case QOpenGLTexture::TargetBuffer: never executed: case QOpenGLTexture::TargetBuffer: | 0 | ||||||||||||||||||
2337 | case never executed: QOpenGLTexture::TargetRectangle:case QOpenGLTexture::TargetRectangle: never executed: case QOpenGLTexture::TargetRectangle: | 0 | ||||||||||||||||||
2338 | - | |||||||||||||||||||
2339 | QMessageLogger(__FILE__, 2920, __PRETTY_FUNCTION__).warning("Texture target does not support multisampling"); | - | ||||||||||||||||||
2340 | break; never executed: break; | 0 | ||||||||||||||||||
2341 | } | - | ||||||||||||||||||
2342 | } never executed: end of block | 0 | ||||||||||||||||||
2343 | bool QOpenGLTexture::isFixedSamplePositions() const | - | ||||||||||||||||||
2344 | { | - | ||||||||||||||||||
2345 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2346 | return never executed: d->fixedSamplePositions;return d->fixedSamplePositions; never executed: return d->fixedSamplePositions; | 0 | ||||||||||||||||||
2347 | } | - | ||||||||||||||||||
2348 | void QOpenGLTexture::allocateStorage() | - | ||||||||||||||||||
2349 | { | - | ||||||||||||||||||
2350 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2351 | if (d->create()
| 0 | ||||||||||||||||||
2352 | const QOpenGLTexture::PixelFormat pixelFormat = pixelFormatCompatibleWithInternalFormat(d->format); | - | ||||||||||||||||||
2353 | const QOpenGLTexture::PixelType pixelType = pixelTypeCompatibleWithInternalFormat(d->format); | - | ||||||||||||||||||
2354 | d->allocateStorage(pixelFormat, pixelType); | - | ||||||||||||||||||
2355 | } never executed: end of block | 0 | ||||||||||||||||||
2356 | } never executed: end of block | 0 | ||||||||||||||||||
2357 | void QOpenGLTexture::allocateStorage(QOpenGLTexture::PixelFormat pixelFormat, QOpenGLTexture::PixelType pixelType) | - | ||||||||||||||||||
2358 | { | - | ||||||||||||||||||
2359 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2360 | if (d->create()
| 0 | ||||||||||||||||||
2361 | d->allocateStorage(pixelFormat, pixelType); never executed: d->allocateStorage(pixelFormat, pixelType); | 0 | ||||||||||||||||||
2362 | } never executed: end of block | 0 | ||||||||||||||||||
2363 | bool QOpenGLTexture::isStorageAllocated() const | - | ||||||||||||||||||
2364 | { | - | ||||||||||||||||||
2365 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2366 | return never executed: d->storageAllocated;return d->storageAllocated; never executed: return d->storageAllocated; | 0 | ||||||||||||||||||
2367 | } | - | ||||||||||||||||||
2368 | QOpenGLTexture *QOpenGLTexture::createTextureView(Target target, | - | ||||||||||||||||||
2369 | TextureFormat viewFormat, | - | ||||||||||||||||||
2370 | int minimumMipmapLevel, int maximumMipmapLevel, | - | ||||||||||||||||||
2371 | int minimumLayer, int maximumLayer) const | - | ||||||||||||||||||
2372 | { | - | ||||||||||||||||||
2373 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2374 | if (!isStorageAllocated()
| 0 | ||||||||||||||||||
2375 | QMessageLogger(__FILE__, 3060, __PRETTY_FUNCTION__).warning("Cannot set create a texture view of a texture that does not have storage allocated."); | - | ||||||||||||||||||
2376 | return never executed: 0;return 0; never executed: return 0; | 0 | ||||||||||||||||||
2377 | } | - | ||||||||||||||||||
2378 | ((!(maximumMipmapLevel >= minimumMipmapLevel)) ? qt_assert("maximumMipmapLevel >= minimumMipmapLevel",__FILE__,3063) : qt_noop()); | - | ||||||||||||||||||
2379 | ((!(maximumLayer >= minimumLayer)) ? qt_assert("maximumLayer >= minimumLayer",__FILE__,3064) : qt_noop()); | - | ||||||||||||||||||
2380 | return never executed: d->createTextureView(target, viewFormat,return d->createTextureView(target, viewFormat, minimumMipmapLevel, maximumMipmapLevel, minimumLayer, maximumLayer); never executed: return d->createTextureView(target, viewFormat, minimumMipmapLevel, maximumMipmapLevel, minimumLayer, maximumLayer); | 0 | ||||||||||||||||||
2381 | minimumMipmapLevel, maximumMipmapLevel, never executed: return d->createTextureView(target, viewFormat, minimumMipmapLevel, maximumMipmapLevel, minimumLayer, maximumLayer); | 0 | ||||||||||||||||||
2382 | minimumLayer, maximumLayer); never executed: return d->createTextureView(target, viewFormat, minimumMipmapLevel, maximumMipmapLevel, minimumLayer, maximumLayer); | 0 | ||||||||||||||||||
2383 | } | - | ||||||||||||||||||
2384 | - | |||||||||||||||||||
2385 | - | |||||||||||||||||||
2386 | - | |||||||||||||||||||
2387 | - | |||||||||||||||||||
2388 | - | |||||||||||||||||||
2389 | - | |||||||||||||||||||
2390 | - | |||||||||||||||||||
2391 | bool QOpenGLTexture::isTextureView() const | - | ||||||||||||||||||
2392 | { | - | ||||||||||||||||||
2393 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2394 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3079) : qt_noop()); | - | ||||||||||||||||||
2395 | return never executed: d->textureView;return d->textureView; never executed: return d->textureView; | 0 | ||||||||||||||||||
2396 | } | - | ||||||||||||||||||
2397 | void QOpenGLTexture::setData(int mipLevel, int layer, CubeMapFace cubeFace, | - | ||||||||||||||||||
2398 | PixelFormat sourceFormat, PixelType sourceType, | - | ||||||||||||||||||
2399 | const void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2400 | { | - | ||||||||||||||||||
2401 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2402 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3104) : qt_noop()); | - | ||||||||||||||||||
2403 | if (!isStorageAllocated()
| 0 | ||||||||||||||||||
2404 | QMessageLogger(__FILE__, 3106, __PRETTY_FUNCTION__).warning("Cannot set data on a texture that does not have storage allocated.\n" | - | ||||||||||||||||||
2405 | "To do so call allocateStorage() before this function"); | - | ||||||||||||||||||
2406 | return; never executed: return; | 0 | ||||||||||||||||||
2407 | } | - | ||||||||||||||||||
2408 | d->setData(mipLevel, layer, cubeFace, sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
2409 | } never executed: end of block | 0 | ||||||||||||||||||
2410 | - | |||||||||||||||||||
2411 | - | |||||||||||||||||||
2412 | - | |||||||||||||||||||
2413 | - | |||||||||||||||||||
2414 | - | |||||||||||||||||||
2415 | void QOpenGLTexture::setData(int mipLevel, int layer, | - | ||||||||||||||||||
2416 | PixelFormat sourceFormat, PixelType sourceType, | - | ||||||||||||||||||
2417 | const void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2418 | { | - | ||||||||||||||||||
2419 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2420 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3122) : qt_noop()); | - | ||||||||||||||||||
2421 | d->setData(mipLevel, layer, QOpenGLTexture::CubeMapPositiveX, sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
2422 | } never executed: end of block | 0 | ||||||||||||||||||
2423 | - | |||||||||||||||||||
2424 | - | |||||||||||||||||||
2425 | - | |||||||||||||||||||
2426 | - | |||||||||||||||||||
2427 | - | |||||||||||||||||||
2428 | void QOpenGLTexture::setData(int mipLevel, | - | ||||||||||||||||||
2429 | PixelFormat sourceFormat, PixelType sourceType, | - | ||||||||||||||||||
2430 | const void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2431 | { | - | ||||||||||||||||||
2432 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2433 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3135) : qt_noop()); | - | ||||||||||||||||||
2434 | d->setData(mipLevel, 0, QOpenGLTexture::CubeMapPositiveX, sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
2435 | } never executed: end of block | 0 | ||||||||||||||||||
2436 | - | |||||||||||||||||||
2437 | - | |||||||||||||||||||
2438 | - | |||||||||||||||||||
2439 | - | |||||||||||||||||||
2440 | - | |||||||||||||||||||
2441 | void QOpenGLTexture::setData(PixelFormat sourceFormat, PixelType sourceType, | - | ||||||||||||||||||
2442 | const void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2443 | { | - | ||||||||||||||||||
2444 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2445 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3147) : qt_noop()); | - | ||||||||||||||||||
2446 | d->setData(0, 0, QOpenGLTexture::CubeMapPositiveX, sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
2447 | } never executed: end of block | 0 | ||||||||||||||||||
2448 | void QOpenGLTexture::setData(int mipLevel, int layer, CubeMapFace cubeFace, | - | ||||||||||||||||||
2449 | PixelFormat sourceFormat, PixelType sourceType, | - | ||||||||||||||||||
2450 | void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2451 | { | - | ||||||||||||||||||
2452 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2453 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3163) : qt_noop()); | - | ||||||||||||||||||
2454 | if (!isStorageAllocated()
| 0 | ||||||||||||||||||
2455 | QMessageLogger(__FILE__, 3165, __PRETTY_FUNCTION__).warning("Cannot set data on a texture that does not have storage allocated.\n" | - | ||||||||||||||||||
2456 | "To do so call allocateStorage() before this function"); | - | ||||||||||||||||||
2457 | return; never executed: return; | 0 | ||||||||||||||||||
2458 | } | - | ||||||||||||||||||
2459 | d->setData(mipLevel, layer, cubeFace, sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
2460 | } never executed: end of block | 0 | ||||||||||||||||||
2461 | - | |||||||||||||||||||
2462 | - | |||||||||||||||||||
2463 | - | |||||||||||||||||||
2464 | - | |||||||||||||||||||
2465 | - | |||||||||||||||||||
2466 | void QOpenGLTexture::setData(int mipLevel, int layer, | - | ||||||||||||||||||
2467 | PixelFormat sourceFormat, PixelType sourceType, | - | ||||||||||||||||||
2468 | void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2469 | { | - | ||||||||||||||||||
2470 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2471 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3181) : qt_noop()); | - | ||||||||||||||||||
2472 | d->setData(mipLevel, layer, QOpenGLTexture::CubeMapPositiveX, sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
2473 | } never executed: end of block | 0 | ||||||||||||||||||
2474 | - | |||||||||||||||||||
2475 | - | |||||||||||||||||||
2476 | - | |||||||||||||||||||
2477 | - | |||||||||||||||||||
2478 | - | |||||||||||||||||||
2479 | void QOpenGLTexture::setData(int mipLevel, | - | ||||||||||||||||||
2480 | PixelFormat sourceFormat, PixelType sourceType, | - | ||||||||||||||||||
2481 | void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2482 | { | - | ||||||||||||||||||
2483 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2484 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3194) : qt_noop()); | - | ||||||||||||||||||
2485 | d->setData(mipLevel, 0, QOpenGLTexture::CubeMapPositiveX, sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
2486 | } never executed: end of block | 0 | ||||||||||||||||||
2487 | - | |||||||||||||||||||
2488 | - | |||||||||||||||||||
2489 | - | |||||||||||||||||||
2490 | - | |||||||||||||||||||
2491 | - | |||||||||||||||||||
2492 | void QOpenGLTexture::setData(PixelFormat sourceFormat, PixelType sourceType, | - | ||||||||||||||||||
2493 | void *data, const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2494 | { | - | ||||||||||||||||||
2495 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2496 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3206) : qt_noop()); | - | ||||||||||||||||||
2497 | d->setData(0, 0, QOpenGLTexture::CubeMapPositiveX, sourceFormat, sourceType, data, options); | - | ||||||||||||||||||
2498 | } never executed: end of block | 0 | ||||||||||||||||||
2499 | void QOpenGLTexture::setData(const QImage& image, MipMapGeneration genMipMaps) | - | ||||||||||||||||||
2500 | { | - | ||||||||||||||||||
2501 | QOpenGLContext *context = QOpenGLContext::currentContext(); | - | ||||||||||||||||||
2502 | if (!context
| 0 | ||||||||||||||||||
2503 | QMessageLogger(__FILE__, 3222, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setData() requires a valid current context"); | - | ||||||||||||||||||
2504 | return; never executed: return; | 0 | ||||||||||||||||||
2505 | } | - | ||||||||||||||||||
2506 | - | |||||||||||||||||||
2507 | if (image.isNull()
| 0 | ||||||||||||||||||
2508 | QMessageLogger(__FILE__, 3227, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setData() tried to set a null image"); | - | ||||||||||||||||||
2509 | return; never executed: return; | 0 | ||||||||||||||||||
2510 | } | - | ||||||||||||||||||
2511 | - | |||||||||||||||||||
2512 | if (context->isOpenGLES()
| 0 | ||||||||||||||||||
2513 | setFormat(QOpenGLTexture::RGBAFormat); never executed: setFormat(QOpenGLTexture::RGBAFormat); | 0 | ||||||||||||||||||
2514 | else | - | ||||||||||||||||||
2515 | setFormat(QOpenGLTexture::RGBA8_UNorm); never executed: setFormat(QOpenGLTexture::RGBA8_UNorm); | 0 | ||||||||||||||||||
2516 | - | |||||||||||||||||||
2517 | setSize(image.width(), image.height()); | - | ||||||||||||||||||
2518 | setMipLevels(genMipMaps == GenerateMipMaps ? maximumMipLevels() : 1); | - | ||||||||||||||||||
2519 | allocateStorage(QOpenGLTexture::RGBA, QOpenGLTexture::UInt8); | - | ||||||||||||||||||
2520 | - | |||||||||||||||||||
2521 | - | |||||||||||||||||||
2522 | QImage glImage = image.convertToFormat(QImage::Format_RGBA8888); | - | ||||||||||||||||||
2523 | QOpenGLPixelTransferOptions uploadOptions; | - | ||||||||||||||||||
2524 | uploadOptions.setAlignment(1); | - | ||||||||||||||||||
2525 | setData(0, QOpenGLTexture::RGBA, QOpenGLTexture::UInt8, glImage.constBits(), &uploadOptions); | - | ||||||||||||||||||
2526 | } never executed: end of block | 0 | ||||||||||||||||||
2527 | void QOpenGLTexture::setCompressedData(int mipLevel, int layer, CubeMapFace cubeFace, | - | ||||||||||||||||||
2528 | int dataSize, const void *data, | - | ||||||||||||||||||
2529 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2530 | { | - | ||||||||||||||||||
2531 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2532 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3262) : qt_noop()); | - | ||||||||||||||||||
2533 | if (!isStorageAllocated()
| 0 | ||||||||||||||||||
2534 | QMessageLogger(__FILE__, 3264, __PRETTY_FUNCTION__).warning("Cannot set data on a texture that does not have storage allocated.\n" | - | ||||||||||||||||||
2535 | "To do so call allocateStorage() before this function"); | - | ||||||||||||||||||
2536 | return; never executed: return; | 0 | ||||||||||||||||||
2537 | } | - | ||||||||||||||||||
2538 | d->setCompressedData(mipLevel, layer, cubeFace, dataSize, data, options); | - | ||||||||||||||||||
2539 | } never executed: end of block | 0 | ||||||||||||||||||
2540 | - | |||||||||||||||||||
2541 | - | |||||||||||||||||||
2542 | - | |||||||||||||||||||
2543 | - | |||||||||||||||||||
2544 | void QOpenGLTexture::setCompressedData(int mipLevel, int layer, int dataSize, const void *data, | - | ||||||||||||||||||
2545 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2546 | { | - | ||||||||||||||||||
2547 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2548 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3278) : qt_noop()); | - | ||||||||||||||||||
2549 | d->setCompressedData(mipLevel, layer, QOpenGLTexture::CubeMapPositiveX, dataSize, data, options); | - | ||||||||||||||||||
2550 | } never executed: end of block | 0 | ||||||||||||||||||
2551 | - | |||||||||||||||||||
2552 | - | |||||||||||||||||||
2553 | - | |||||||||||||||||||
2554 | - | |||||||||||||||||||
2555 | void QOpenGLTexture::setCompressedData(int mipLevel, int dataSize, const void *data, | - | ||||||||||||||||||
2556 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2557 | { | - | ||||||||||||||||||
2558 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2559 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3289) : qt_noop()); | - | ||||||||||||||||||
2560 | d->setCompressedData(mipLevel, 0, QOpenGLTexture::CubeMapPositiveX, dataSize, data, options); | - | ||||||||||||||||||
2561 | } never executed: end of block | 0 | ||||||||||||||||||
2562 | - | |||||||||||||||||||
2563 | - | |||||||||||||||||||
2564 | - | |||||||||||||||||||
2565 | - | |||||||||||||||||||
2566 | void QOpenGLTexture::setCompressedData(int dataSize, const void *data, | - | ||||||||||||||||||
2567 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2568 | { | - | ||||||||||||||||||
2569 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2570 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3300) : qt_noop()); | - | ||||||||||||||||||
2571 | d->setCompressedData(0, 0, QOpenGLTexture::CubeMapPositiveX, dataSize, data, options); | - | ||||||||||||||||||
2572 | } never executed: end of block | 0 | ||||||||||||||||||
2573 | - | |||||||||||||||||||
2574 | - | |||||||||||||||||||
2575 | - | |||||||||||||||||||
2576 | - | |||||||||||||||||||
2577 | - | |||||||||||||||||||
2578 | - | |||||||||||||||||||
2579 | void QOpenGLTexture::setCompressedData(int mipLevel, int layer, CubeMapFace cubeFace, | - | ||||||||||||||||||
2580 | int dataSize, void *data, | - | ||||||||||||||||||
2581 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2582 | { | - | ||||||||||||||||||
2583 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2584 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3314) : qt_noop()); | - | ||||||||||||||||||
2585 | if (!isStorageAllocated()
| 0 | ||||||||||||||||||
2586 | QMessageLogger(__FILE__, 3316, __PRETTY_FUNCTION__).warning("Cannot set data on a texture that does not have storage allocated.\n" | - | ||||||||||||||||||
2587 | "To do so call allocateStorage() before this function"); | - | ||||||||||||||||||
2588 | return; never executed: return; | 0 | ||||||||||||||||||
2589 | } | - | ||||||||||||||||||
2590 | d->setCompressedData(mipLevel, layer, cubeFace, dataSize, data, options); | - | ||||||||||||||||||
2591 | } never executed: end of block | 0 | ||||||||||||||||||
2592 | - | |||||||||||||||||||
2593 | - | |||||||||||||||||||
2594 | - | |||||||||||||||||||
2595 | - | |||||||||||||||||||
2596 | - | |||||||||||||||||||
2597 | void QOpenGLTexture::setCompressedData(int mipLevel, int layer, int dataSize, void *data, | - | ||||||||||||||||||
2598 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2599 | { | - | ||||||||||||||||||
2600 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2601 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3331) : qt_noop()); | - | ||||||||||||||||||
2602 | d->setCompressedData(mipLevel, layer, QOpenGLTexture::CubeMapPositiveX, dataSize, data, options); | - | ||||||||||||||||||
2603 | } never executed: end of block | 0 | ||||||||||||||||||
2604 | - | |||||||||||||||||||
2605 | - | |||||||||||||||||||
2606 | - | |||||||||||||||||||
2607 | - | |||||||||||||||||||
2608 | - | |||||||||||||||||||
2609 | void QOpenGLTexture::setCompressedData(int mipLevel, int dataSize, void *data, | - | ||||||||||||||||||
2610 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2611 | { | - | ||||||||||||||||||
2612 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2613 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3343) : qt_noop()); | - | ||||||||||||||||||
2614 | d->setCompressedData(mipLevel, 0, QOpenGLTexture::CubeMapPositiveX, dataSize, data, options); | - | ||||||||||||||||||
2615 | } never executed: end of block | 0 | ||||||||||||||||||
2616 | - | |||||||||||||||||||
2617 | - | |||||||||||||||||||
2618 | - | |||||||||||||||||||
2619 | - | |||||||||||||||||||
2620 | - | |||||||||||||||||||
2621 | void QOpenGLTexture::setCompressedData(int dataSize, void *data, | - | ||||||||||||||||||
2622 | const QOpenGLPixelTransferOptions * const options) | - | ||||||||||||||||||
2623 | { | - | ||||||||||||||||||
2624 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2625 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3355) : qt_noop()); | - | ||||||||||||||||||
2626 | d->setCompressedData(0, 0, QOpenGLTexture::CubeMapPositiveX, dataSize, data, options); | - | ||||||||||||||||||
2627 | } never executed: end of block | 0 | ||||||||||||||||||
2628 | - | |||||||||||||||||||
2629 | - | |||||||||||||||||||
2630 | - | |||||||||||||||||||
2631 | - | |||||||||||||||||||
2632 | - | |||||||||||||||||||
2633 | - | |||||||||||||||||||
2634 | bool QOpenGLTexture::hasFeature(Feature feature) | - | ||||||||||||||||||
2635 | { | - | ||||||||||||||||||
2636 | QOpenGLContext *ctx = QOpenGLContext::currentContext(); | - | ||||||||||||||||||
2637 | if (!ctx
| 0 | ||||||||||||||||||
2638 | QMessageLogger(__FILE__, 3368, __PRETTY_FUNCTION__).warning("QOpenGLTexture::hasFeature() requires a valid current context"); | - | ||||||||||||||||||
2639 | return never executed: false;return false; never executed: return false; | 0 | ||||||||||||||||||
2640 | } | - | ||||||||||||||||||
2641 | - | |||||||||||||||||||
2642 | QSurfaceFormat f = ctx->format(); | - | ||||||||||||||||||
2643 | - | |||||||||||||||||||
2644 | bool supported = false; | - | ||||||||||||||||||
2645 | - | |||||||||||||||||||
2646 | - | |||||||||||||||||||
2647 | if (!ctx->isOpenGLES()
| 0 | ||||||||||||||||||
2648 | switch (feature) { | - | ||||||||||||||||||
2649 | case never executed: ImmutableMultisampleStorage:case ImmutableMultisampleStorage: never executed: case ImmutableMultisampleStorage: | 0 | ||||||||||||||||||
2650 | supported = f.version() >= qMakePair(4, 3)
| 0 | ||||||||||||||||||
2651 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_texture_storage_multisample") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_texture_storage_multisample" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2652 | break; never executed: break; | 0 | ||||||||||||||||||
2653 | - | |||||||||||||||||||
2654 | case never executed: TextureBuffer:case TextureBuffer: never executed: case TextureBuffer: | 0 | ||||||||||||||||||
2655 | supported = f.version() >= qMakePair(3, 0)
| 0 | ||||||||||||||||||
2656 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_texture_buffer_object") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_texture_buffer_object" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2657 | break; never executed: break; | 0 | ||||||||||||||||||
2658 | - | |||||||||||||||||||
2659 | case never executed: StencilTexturing:case StencilTexturing: never executed: case StencilTexturing: | 0 | ||||||||||||||||||
2660 | supported = f.version() >= qMakePair(4, 3)
| 0 | ||||||||||||||||||
2661 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_stencil_texturing") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_stencil_texturing" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2662 | break; never executed: break; | 0 | ||||||||||||||||||
2663 | - | |||||||||||||||||||
2664 | case never executed: ImmutableStorage:case ImmutableStorage: never executed: case ImmutableStorage: | 0 | ||||||||||||||||||
2665 | supported = f.version() >= qMakePair(4, 2)
| 0 | ||||||||||||||||||
2666 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_texture_storage") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_texture_storage" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2667 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_EXT_texture_storage") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_EXT_texture_storage" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2668 | break; never executed: break; | 0 | ||||||||||||||||||
2669 | - | |||||||||||||||||||
2670 | case never executed: TextureCubeMapArrays:case TextureCubeMapArrays: never executed: case TextureCubeMapArrays: | 0 | ||||||||||||||||||
2671 | supported = f.version() >= qMakePair(4, 0)
| 0 | ||||||||||||||||||
2672 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("ARB_texture_cube_map_array") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "ARB_texture_cube_map_array" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2673 | break; never executed: break; | 0 | ||||||||||||||||||
2674 | - | |||||||||||||||||||
2675 | case never executed: Swizzle:case Swizzle: never executed: case Swizzle: | 0 | ||||||||||||||||||
2676 | supported = f.version() >= qMakePair(3, 3)
| 0 | ||||||||||||||||||
2677 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_texture_swizzle") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_texture_swizzle" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2678 | break; never executed: break; | 0 | ||||||||||||||||||
2679 | - | |||||||||||||||||||
2680 | case never executed: TextureMultisample:case TextureMultisample: never executed: case TextureMultisample: | 0 | ||||||||||||||||||
2681 | supported = f.version() >= qMakePair(3, 2)
| 0 | ||||||||||||||||||
2682 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_texture_multisample") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_texture_multisample" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2683 | break; never executed: break; | 0 | ||||||||||||||||||
2684 | - | |||||||||||||||||||
2685 | case never executed: TextureArrays:case TextureArrays: never executed: case TextureArrays: | 0 | ||||||||||||||||||
2686 | supported = f.version() >= qMakePair(3, 0)
| 0 | ||||||||||||||||||
2687 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_EXT_texture_array") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_EXT_texture_array" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2688 | break; never executed: break; | 0 | ||||||||||||||||||
2689 | - | |||||||||||||||||||
2690 | case never executed: TextureRectangle:case TextureRectangle: never executed: case TextureRectangle: | 0 | ||||||||||||||||||
2691 | supported = f.version() >= qMakePair(2, 1)
| 0 | ||||||||||||||||||
2692 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("ARB_texture_rectangle") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "ARB_texture_rectangle" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2693 | break; never executed: break; | 0 | ||||||||||||||||||
2694 | - | |||||||||||||||||||
2695 | case never executed: Texture3D:case Texture3D: never executed: case Texture3D: | 0 | ||||||||||||||||||
2696 | supported = f.version() >= qMakePair(1, 3); | - | ||||||||||||||||||
2697 | break; never executed: break; | 0 | ||||||||||||||||||
2698 | - | |||||||||||||||||||
2699 | case never executed: AnisotropicFiltering:case AnisotropicFiltering: never executed: case AnisotropicFiltering: | 0 | ||||||||||||||||||
2700 | supported = ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_EXT_texture_filter_anisotropic") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_EXT_texture_filter_anisotropic" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return never executed: ba;return ba; never executed: }()));return ba; | 0 | ||||||||||||||||||
2701 | break; never executed: break; | 0 | ||||||||||||||||||
2702 | - | |||||||||||||||||||
2703 | case never executed: NPOTTextures:case NPOTTextures: never executed: case NPOTTextures: | 0 | ||||||||||||||||||
2704 | case never executed: NPOTTextureRepeat:case NPOTTextureRepeat: never executed: case NPOTTextureRepeat: | 0 | ||||||||||||||||||
2705 | supported = ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_texture_non_power_of_two") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_texture_non_power_of_two" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return never executed: ba;return ba; never executed: }()));return ba; | 0 | ||||||||||||||||||
2706 | break; never executed: break; | 0 | ||||||||||||||||||
2707 | - | |||||||||||||||||||
2708 | case never executed: Texture1D:case Texture1D: never executed: case Texture1D: | 0 | ||||||||||||||||||
2709 | supported = f.version() >= qMakePair(1, 1); | - | ||||||||||||||||||
2710 | break; never executed: break; | 0 | ||||||||||||||||||
2711 | - | |||||||||||||||||||
2712 | case never executed: TextureComparisonOperators:case TextureComparisonOperators: never executed: case TextureComparisonOperators: | 0 | ||||||||||||||||||
2713 | - | |||||||||||||||||||
2714 | - | |||||||||||||||||||
2715 | - | |||||||||||||||||||
2716 | - | |||||||||||||||||||
2717 | supported = f.version() >= qMakePair(1, 5)
| 0 | ||||||||||||||||||
2718 | || (ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_shadow") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_shadow" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2719 | && ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_EXT_shadow_funcs") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_EXT_shadow_funcs" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2720 | break; never executed: break; | 0 | ||||||||||||||||||
2721 | - | |||||||||||||||||||
2722 | case never executed: TextureMipMapLevel:case TextureMipMapLevel: never executed: case TextureMipMapLevel: | 0 | ||||||||||||||||||
2723 | supported = f.version() >= qMakePair(1, 2); | - | ||||||||||||||||||
2724 | break; never executed: break; | 0 | ||||||||||||||||||
2725 | - | |||||||||||||||||||
2726 | case never executed: MaxFeatureFlag:case MaxFeatureFlag: never executed: case MaxFeatureFlag: | 0 | ||||||||||||||||||
2727 | break; never executed: break; | 0 | ||||||||||||||||||
2728 | } | - | ||||||||||||||||||
2729 | } never executed: end of block | 0 | ||||||||||||||||||
2730 | - | |||||||||||||||||||
2731 | if (ctx->isOpenGLES()
| 0 | ||||||||||||||||||
2732 | - | |||||||||||||||||||
2733 | { | - | ||||||||||||||||||
2734 | const char *renderer = reinterpret_cast<const char *>(ctx->functions()->glGetString(0x1F01)); | - | ||||||||||||||||||
2735 | switch (feature) { | - | ||||||||||||||||||
2736 | case never executed: ImmutableStorage:case ImmutableStorage: never executed: case ImmutableStorage: | 0 | ||||||||||||||||||
2737 | supported = (f.version() >= qMakePair(3, 0)
| 0 | ||||||||||||||||||
2738 | && !(renderer
| 0 | ||||||||||||||||||
2739 | break; never executed: break; | 0 | ||||||||||||||||||
2740 | - | |||||||||||||||||||
2741 | case never executed: ImmutableMultisampleStorage:case ImmutableMultisampleStorage: never executed: case ImmutableMultisampleStorage: | 0 | ||||||||||||||||||
2742 | supported = f.version() >= qMakePair(3, 1); | - | ||||||||||||||||||
2743 | break; never executed: break; | 0 | ||||||||||||||||||
2744 | - | |||||||||||||||||||
2745 | case never executed: TextureRectangle:case TextureRectangle: never executed: case TextureRectangle: | 0 | ||||||||||||||||||
2746 | break; never executed: break; | 0 | ||||||||||||||||||
2747 | - | |||||||||||||||||||
2748 | case never executed: TextureArrays:case TextureArrays: never executed: case TextureArrays: | 0 | ||||||||||||||||||
2749 | supported = f.version() >= qMakePair(3, 0); | - | ||||||||||||||||||
2750 | break; never executed: break; | 0 | ||||||||||||||||||
2751 | - | |||||||||||||||||||
2752 | case never executed: Texture3D:case Texture3D: never executed: case Texture3D: | 0 | ||||||||||||||||||
2753 | supported = f.version() >= qMakePair(3, 0)
| 0 | ||||||||||||||||||
2754 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_OES_texture_3D") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_OES_texture_3D" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2755 | break; never executed: break; | 0 | ||||||||||||||||||
2756 | - | |||||||||||||||||||
2757 | case never executed: TextureMultisample:case TextureMultisample: never executed: case TextureMultisample: | 0 | ||||||||||||||||||
2758 | supported = f.version() >= qMakePair(3, 1); | - | ||||||||||||||||||
2759 | break; never executed: break; | 0 | ||||||||||||||||||
2760 | - | |||||||||||||||||||
2761 | case never executed: TextureBuffer:case TextureBuffer: never executed: case TextureBuffer: | 0 | ||||||||||||||||||
2762 | break; never executed: break; | 0 | ||||||||||||||||||
2763 | - | |||||||||||||||||||
2764 | case never executed: TextureCubeMapArrays:case TextureCubeMapArrays: never executed: case TextureCubeMapArrays: | 0 | ||||||||||||||||||
2765 | break; never executed: break; | 0 | ||||||||||||||||||
2766 | - | |||||||||||||||||||
2767 | case never executed: Swizzle:case Swizzle: never executed: case Swizzle: | 0 | ||||||||||||||||||
2768 | supported = f.version() >= qMakePair(3, 0); | - | ||||||||||||||||||
2769 | break; never executed: break; | 0 | ||||||||||||||||||
2770 | - | |||||||||||||||||||
2771 | case never executed: StencilTexturing:case StencilTexturing: never executed: case StencilTexturing: | 0 | ||||||||||||||||||
2772 | break; never executed: break; | 0 | ||||||||||||||||||
2773 | - | |||||||||||||||||||
2774 | case never executed: AnisotropicFiltering:case AnisotropicFiltering: never executed: case AnisotropicFiltering: | 0 | ||||||||||||||||||
2775 | supported = ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_EXT_texture_filter_anisotropic") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_EXT_texture_filter_anisotropic" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return never executed: ba;return ba; never executed: }()));return ba; | 0 | ||||||||||||||||||
2776 | break; never executed: break; | 0 | ||||||||||||||||||
2777 | - | |||||||||||||||||||
2778 | case never executed: NPOTTextures:case NPOTTextures: never executed: case NPOTTextures: | 0 | ||||||||||||||||||
2779 | case never executed: NPOTTextureRepeat:case NPOTTextureRepeat: never executed: case NPOTTextureRepeat: | 0 | ||||||||||||||||||
2780 | supported = f.version() >= qMakePair(3,0)
| 0 | ||||||||||||||||||
2781 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_OES_texture_npot") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_OES_texture_npot" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2782 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_ARB_texture_non_power_of_two") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_ARB_texture_non_power_of_two" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2783 | break; never executed: break; | 0 | ||||||||||||||||||
2784 | - | |||||||||||||||||||
2785 | case never executed: Texture1D:case Texture1D: never executed: case Texture1D: | 0 | ||||||||||||||||||
2786 | break; never executed: break; | 0 | ||||||||||||||||||
2787 | - | |||||||||||||||||||
2788 | case never executed: TextureComparisonOperators:case TextureComparisonOperators: never executed: case TextureComparisonOperators: | 0 | ||||||||||||||||||
2789 | supported = f.version() >= qMakePair(3, 0)
| 0 | ||||||||||||||||||
2790 | || ctx->hasExtension(([]() -> QByteArray { enum { Size = sizeof("GL_EXT_shadow_samplers") - 1 }; static const QStaticByteArrayData<Size> qbytearray_literal = { { { { -1 } }, Size, 0, 0, sizeof(QByteArrayData) }, "GL_EXT_shadow_samplers" }; QByteArrayDataPtr holder = { qbytearray_literal.data_ptr() }; const QByteArray ba(holder); return ba; }()))
| 0 | ||||||||||||||||||
2791 | break; never executed: break; | 0 | ||||||||||||||||||
2792 | - | |||||||||||||||||||
2793 | case never executed: TextureMipMapLevel:case TextureMipMapLevel: never executed: case TextureMipMapLevel: | 0 | ||||||||||||||||||
2794 | supported = f.version() >= qMakePair(3, 0); | - | ||||||||||||||||||
2795 | break; never executed: break; | 0 | ||||||||||||||||||
2796 | - | |||||||||||||||||||
2797 | case never executed: MaxFeatureFlag:case MaxFeatureFlag: never executed: case MaxFeatureFlag: | 0 | ||||||||||||||||||
2798 | break; never executed: break; | 0 | ||||||||||||||||||
2799 | } | - | ||||||||||||||||||
2800 | } never executed: end of block | 0 | ||||||||||||||||||
2801 | - | |||||||||||||||||||
2802 | return never executed: supported;return supported; never executed: return supported; | 0 | ||||||||||||||||||
2803 | } | - | ||||||||||||||||||
2804 | - | |||||||||||||||||||
2805 | - | |||||||||||||||||||
2806 | - | |||||||||||||||||||
2807 | - | |||||||||||||||||||
2808 | - | |||||||||||||||||||
2809 | - | |||||||||||||||||||
2810 | - | |||||||||||||||||||
2811 | void QOpenGLTexture::setMipBaseLevel(int baseLevel) | - | ||||||||||||||||||
2812 | { | - | ||||||||||||||||||
2813 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2814 | d->create(); | - | ||||||||||||||||||
2815 | if (!d->features.testFlag(TextureMipMapLevel)
| 0 | ||||||||||||||||||
2816 | QMessageLogger(__FILE__, 3546, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setMipBaseLevel: requires OpenGL >= 1.2 or OpenGL ES >= 3.0"); | - | ||||||||||||||||||
2817 | return; never executed: return; | 0 | ||||||||||||||||||
2818 | } | - | ||||||||||||||||||
2819 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3549) : qt_noop()); | - | ||||||||||||||||||
2820 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3550) : qt_noop()); | - | ||||||||||||||||||
2821 | ((!(baseLevel <= d->maxLevel)) ? qt_assert("baseLevel <= d->maxLevel",__FILE__,3551) : qt_noop()); | - | ||||||||||||||||||
2822 | d->baseLevel = baseLevel; | - | ||||||||||||||||||
2823 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x813C, baseLevel); | - | ||||||||||||||||||
2824 | } never executed: end of block | 0 | ||||||||||||||||||
2825 | - | |||||||||||||||||||
2826 | - | |||||||||||||||||||
2827 | - | |||||||||||||||||||
2828 | - | |||||||||||||||||||
2829 | - | |||||||||||||||||||
2830 | - | |||||||||||||||||||
2831 | - | |||||||||||||||||||
2832 | int QOpenGLTexture::mipBaseLevel() const | - | ||||||||||||||||||
2833 | { | - | ||||||||||||||||||
2834 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2835 | return never executed: d->baseLevel;return d->baseLevel; never executed: return d->baseLevel; | 0 | ||||||||||||||||||
2836 | } | - | ||||||||||||||||||
2837 | - | |||||||||||||||||||
2838 | - | |||||||||||||||||||
2839 | - | |||||||||||||||||||
2840 | - | |||||||||||||||||||
2841 | - | |||||||||||||||||||
2842 | - | |||||||||||||||||||
2843 | - | |||||||||||||||||||
2844 | void QOpenGLTexture::setMipMaxLevel(int maxLevel) | - | ||||||||||||||||||
2845 | { | - | ||||||||||||||||||
2846 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2847 | d->create(); | - | ||||||||||||||||||
2848 | if (!d->features.testFlag(TextureMipMapLevel)
| 0 | ||||||||||||||||||
2849 | QMessageLogger(__FILE__, 3579, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setMipMaxLevel: requires OpenGL >= 1.2 or OpenGL ES >= 3.0"); | - | ||||||||||||||||||
2850 | return; never executed: return; | 0 | ||||||||||||||||||
2851 | } | - | ||||||||||||||||||
2852 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3582) : qt_noop()); | - | ||||||||||||||||||
2853 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3583) : qt_noop()); | - | ||||||||||||||||||
2854 | ((!(d->baseLevel <= maxLevel)) ? qt_assert("d->baseLevel <= maxLevel",__FILE__,3584) : qt_noop()); | - | ||||||||||||||||||
2855 | d->maxLevel = maxLevel; | - | ||||||||||||||||||
2856 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x813D, maxLevel); | - | ||||||||||||||||||
2857 | } never executed: end of block | 0 | ||||||||||||||||||
2858 | - | |||||||||||||||||||
2859 | - | |||||||||||||||||||
2860 | - | |||||||||||||||||||
2861 | - | |||||||||||||||||||
2862 | - | |||||||||||||||||||
2863 | - | |||||||||||||||||||
2864 | int QOpenGLTexture::mipMaxLevel() const | - | ||||||||||||||||||
2865 | { | - | ||||||||||||||||||
2866 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2867 | return never executed: d->maxLevel;return d->maxLevel; never executed: return d->maxLevel; | 0 | ||||||||||||||||||
2868 | } | - | ||||||||||||||||||
2869 | void QOpenGLTexture::setMipLevelRange(int baseLevel, int maxLevel) | - | ||||||||||||||||||
2870 | { | - | ||||||||||||||||||
2871 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2872 | d->create(); | - | ||||||||||||||||||
2873 | if (!d->features.testFlag(TextureMipMapLevel)
| 0 | ||||||||||||||||||
2874 | QMessageLogger(__FILE__, 3612, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setMipLevelRange: requires OpenGL >= 1.2 or OpenGL ES >= 3.0"); | - | ||||||||||||||||||
2875 | return; never executed: return; | 0 | ||||||||||||||||||
2876 | } | - | ||||||||||||||||||
2877 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3615) : qt_noop()); | - | ||||||||||||||||||
2878 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3616) : qt_noop()); | - | ||||||||||||||||||
2879 | ((!(baseLevel <= maxLevel)) ? qt_assert("baseLevel <= maxLevel",__FILE__,3617) : qt_noop()); | - | ||||||||||||||||||
2880 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x813C, baseLevel); | - | ||||||||||||||||||
2881 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x813D, maxLevel); | - | ||||||||||||||||||
2882 | } never executed: end of block | 0 | ||||||||||||||||||
2883 | - | |||||||||||||||||||
2884 | - | |||||||||||||||||||
2885 | - | |||||||||||||||||||
2886 | - | |||||||||||||||||||
2887 | - | |||||||||||||||||||
2888 | - | |||||||||||||||||||
2889 | QPair<int, int> QOpenGLTexture::mipLevelRange() const | - | ||||||||||||||||||
2890 | { | - | ||||||||||||||||||
2891 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2892 | return never executed: qMakePair(d->baseLevel, d->maxLevel);return qMakePair(d->baseLevel, d->maxLevel); never executed: return qMakePair(d->baseLevel, d->maxLevel); | 0 | ||||||||||||||||||
2893 | } | - | ||||||||||||||||||
2894 | void QOpenGLTexture::setAutoMipMapGenerationEnabled(bool enabled) | - | ||||||||||||||||||
2895 | { | - | ||||||||||||||||||
2896 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2897 | d->autoGenerateMipMaps = enabled; | - | ||||||||||||||||||
2898 | } never executed: end of block | 0 | ||||||||||||||||||
2899 | - | |||||||||||||||||||
2900 | - | |||||||||||||||||||
2901 | - | |||||||||||||||||||
2902 | - | |||||||||||||||||||
2903 | - | |||||||||||||||||||
2904 | - | |||||||||||||||||||
2905 | bool QOpenGLTexture::isAutoMipMapGenerationEnabled() const | - | ||||||||||||||||||
2906 | { | - | ||||||||||||||||||
2907 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2908 | return never executed: d->autoGenerateMipMaps;return d->autoGenerateMipMaps; never executed: return d->autoGenerateMipMaps; | 0 | ||||||||||||||||||
2909 | } | - | ||||||||||||||||||
2910 | void QOpenGLTexture::generateMipMaps() | - | ||||||||||||||||||
2911 | { | - | ||||||||||||||||||
2912 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2913 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3674) : qt_noop()); | - | ||||||||||||||||||
2914 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3675) : qt_noop()); | - | ||||||||||||||||||
2915 | if (isCompressedFormat(d->format)
| 0 | ||||||||||||||||||
2916 | if (QOpenGLContext *ctx = QOpenGLContext::currentContext()
| 0 | ||||||||||||||||||
2917 | if (ctx->isOpenGLES()
| 0 | ||||||||||||||||||
2918 | return; never executed: return; | 0 | ||||||||||||||||||
2919 | } never executed: end of block | 0 | ||||||||||||||||||
2920 | d->texFuncs->glGenerateTextureMipmap(d->textureId, d->target, d->bindingTarget); | - | ||||||||||||||||||
2921 | } never executed: end of block | 0 | ||||||||||||||||||
2922 | void QOpenGLTexture::generateMipMaps(int baseLevel, bool resetBaseLevel) | - | ||||||||||||||||||
2923 | { | - | ||||||||||||||||||
2924 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2925 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3699) : qt_noop()); | - | ||||||||||||||||||
2926 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3700) : qt_noop()); | - | ||||||||||||||||||
2927 | if (isCompressedFormat(d->format)
| 0 | ||||||||||||||||||
2928 | if (QOpenGLContext *ctx = QOpenGLContext::currentContext()
| 0 | ||||||||||||||||||
2929 | if (ctx->isOpenGLES()
| 0 | ||||||||||||||||||
2930 | return; never executed: return; | 0 | ||||||||||||||||||
2931 | } never executed: end of block | 0 | ||||||||||||||||||
2932 | int oldBaseLevel; | - | ||||||||||||||||||
2933 | if (resetBaseLevel
| 0 | ||||||||||||||||||
2934 | oldBaseLevel = mipBaseLevel(); never executed: oldBaseLevel = mipBaseLevel(); | 0 | ||||||||||||||||||
2935 | setMipBaseLevel(baseLevel); | - | ||||||||||||||||||
2936 | d->texFuncs->glGenerateTextureMipmap(d->textureId, d->target, d->bindingTarget); | - | ||||||||||||||||||
2937 | if (resetBaseLevel
| 0 | ||||||||||||||||||
2938 | setMipBaseLevel(oldBaseLevel); never executed: setMipBaseLevel(oldBaseLevel); | 0 | ||||||||||||||||||
2939 | } never executed: end of block | 0 | ||||||||||||||||||
2940 | void QOpenGLTexture::setSwizzleMask(SwizzleComponent component, SwizzleValue value) | - | ||||||||||||||||||
2941 | { | - | ||||||||||||||||||
2942 | - | |||||||||||||||||||
2943 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
2944 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2945 | d->create(); | - | ||||||||||||||||||
2946 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3733) : qt_noop()); | - | ||||||||||||||||||
2947 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3734) : qt_noop()); | - | ||||||||||||||||||
2948 | if (!d->features.testFlag(Swizzle)
| 0 | ||||||||||||||||||
2949 | QMessageLogger(__FILE__, 3736, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setSwizzleMask() requires OpenGL >= 3.3"); | - | ||||||||||||||||||
2950 | return; never executed: return; | 0 | ||||||||||||||||||
2951 | } | - | ||||||||||||||||||
2952 | d->swizzleMask[component - SwizzleRed] = value; | - | ||||||||||||||||||
2953 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, component, value); | - | ||||||||||||||||||
2954 | return; never executed: return; | 0 | ||||||||||||||||||
2955 | } | - | ||||||||||||||||||
2956 | - | |||||||||||||||||||
2957 | - | |||||||||||||||||||
2958 | - | |||||||||||||||||||
2959 | - | |||||||||||||||||||
2960 | QMessageLogger(__FILE__, 3747, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Texture swizzling is not supported"); | - | ||||||||||||||||||
2961 | } never executed: end of block | 0 | ||||||||||||||||||
2962 | - | |||||||||||||||||||
2963 | - | |||||||||||||||||||
2964 | - | |||||||||||||||||||
2965 | - | |||||||||||||||||||
2966 | - | |||||||||||||||||||
2967 | - | |||||||||||||||||||
2968 | void QOpenGLTexture::setSwizzleMask(SwizzleValue r, SwizzleValue g, | - | ||||||||||||||||||
2969 | SwizzleValue b, SwizzleValue a) | - | ||||||||||||||||||
2970 | { | - | ||||||||||||||||||
2971 | - | |||||||||||||||||||
2972 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
2973 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
2974 | d->create(); | - | ||||||||||||||||||
2975 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3762) : qt_noop()); | - | ||||||||||||||||||
2976 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3763) : qt_noop()); | - | ||||||||||||||||||
2977 | if (!d->features.testFlag(Swizzle)
| 0 | ||||||||||||||||||
2978 | QMessageLogger(__FILE__, 3765, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setSwizzleMask() requires OpenGL >= 3.3"); | - | ||||||||||||||||||
2979 | return; never executed: return; | 0 | ||||||||||||||||||
2980 | } | - | ||||||||||||||||||
2981 | GLint swizzleMask[] = {GLint(r), GLint(g), GLint(b), GLint(a)}; | - | ||||||||||||||||||
2982 | d->swizzleMask[0] = r; | - | ||||||||||||||||||
2983 | d->swizzleMask[1] = g; | - | ||||||||||||||||||
2984 | d->swizzleMask[2] = b; | - | ||||||||||||||||||
2985 | d->swizzleMask[3] = a; | - | ||||||||||||||||||
2986 | d->texFuncs->glTextureParameteriv(d->textureId, d->target, d->bindingTarget, 0x8E46, swizzleMask); | - | ||||||||||||||||||
2987 | return; never executed: return; | 0 | ||||||||||||||||||
2988 | } | - | ||||||||||||||||||
2989 | - | |||||||||||||||||||
2990 | - | |||||||||||||||||||
2991 | - | |||||||||||||||||||
2992 | - | |||||||||||||||||||
2993 | - | |||||||||||||||||||
2994 | - | |||||||||||||||||||
2995 | QMessageLogger(__FILE__, 3782, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Texture swizzling is not supported"); | - | ||||||||||||||||||
2996 | } never executed: end of block | 0 | ||||||||||||||||||
2997 | - | |||||||||||||||||||
2998 | - | |||||||||||||||||||
2999 | - | |||||||||||||||||||
3000 | - | |||||||||||||||||||
3001 | QOpenGLTexture::SwizzleValue QOpenGLTexture::swizzleMask(SwizzleComponent component) const | - | ||||||||||||||||||
3002 | { | - | ||||||||||||||||||
3003 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3004 | return never executed: d->swizzleMask[component - SwizzleRed];return d->swizzleMask[component - SwizzleRed]; never executed: return d->swizzleMask[component - SwizzleRed]; | 0 | ||||||||||||||||||
3005 | } | - | ||||||||||||||||||
3006 | void QOpenGLTexture::setDepthStencilMode(QOpenGLTexture::DepthStencilMode mode) | - | ||||||||||||||||||
3007 | { | - | ||||||||||||||||||
3008 | - | |||||||||||||||||||
3009 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3010 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3011 | d->create(); | - | ||||||||||||||||||
3012 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3822) : qt_noop()); | - | ||||||||||||||||||
3013 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3823) : qt_noop()); | - | ||||||||||||||||||
3014 | if (!d->features.testFlag(StencilTexturing)
| 0 | ||||||||||||||||||
3015 | QMessageLogger(__FILE__, 3825, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setDepthStencilMode() requires OpenGL >= 4.3 or GL_ARB_stencil_texturing"); | - | ||||||||||||||||||
3016 | return; never executed: return; | 0 | ||||||||||||||||||
3017 | } | - | ||||||||||||||||||
3018 | d->depthStencilMode = mode; | - | ||||||||||||||||||
3019 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x90EA, mode); | - | ||||||||||||||||||
3020 | return; never executed: return; | 0 | ||||||||||||||||||
3021 | } | - | ||||||||||||||||||
3022 | - | |||||||||||||||||||
3023 | - | |||||||||||||||||||
3024 | - | |||||||||||||||||||
3025 | QMessageLogger(__FILE__, 3835, __PRETTY_FUNCTION__).warning("QOpenGLTexture: DepthStencil Mode is not supported"); | - | ||||||||||||||||||
3026 | } never executed: end of block | 0 | ||||||||||||||||||
3027 | - | |||||||||||||||||||
3028 | - | |||||||||||||||||||
3029 | - | |||||||||||||||||||
3030 | - | |||||||||||||||||||
3031 | - | |||||||||||||||||||
3032 | - | |||||||||||||||||||
3033 | - | |||||||||||||||||||
3034 | QOpenGLTexture::DepthStencilMode QOpenGLTexture::depthStencilMode() const | - | ||||||||||||||||||
3035 | { | - | ||||||||||||||||||
3036 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3037 | return never executed: d->depthStencilMode;return d->depthStencilMode; never executed: return d->depthStencilMode; | 0 | ||||||||||||||||||
3038 | } | - | ||||||||||||||||||
3039 | void QOpenGLTexture::setComparisonFunction(QOpenGLTexture::ComparisonFunction function) | - | ||||||||||||||||||
3040 | { | - | ||||||||||||||||||
3041 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3042 | d->create(); | - | ||||||||||||||||||
3043 | if (!d->features.testFlag(TextureComparisonOperators)
| 0 | ||||||||||||||||||
3044 | QMessageLogger(__FILE__, 3880, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setComparisonFunction: requires OpenGL >= 1.5 or OpenGL ES >= 3.0"); | - | ||||||||||||||||||
3045 | return; never executed: return; | 0 | ||||||||||||||||||
3046 | } | - | ||||||||||||||||||
3047 | d->comparisonFunction = function; | - | ||||||||||||||||||
3048 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x884D, function); | - | ||||||||||||||||||
3049 | } never executed: end of block | 0 | ||||||||||||||||||
3050 | QOpenGLTexture::ComparisonFunction QOpenGLTexture::comparisonFunction() const | - | ||||||||||||||||||
3051 | { | - | ||||||||||||||||||
3052 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3053 | return never executed: d->comparisonFunction;return d->comparisonFunction; never executed: return d->comparisonFunction; | 0 | ||||||||||||||||||
3054 | } | - | ||||||||||||||||||
3055 | void QOpenGLTexture::setComparisonMode(QOpenGLTexture::ComparisonMode mode) | - | ||||||||||||||||||
3056 | { | - | ||||||||||||||||||
3057 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3058 | d->create(); | - | ||||||||||||||||||
3059 | if (!d->features.testFlag(TextureComparisonOperators)
| 0 | ||||||||||||||||||
3060 | QMessageLogger(__FILE__, 3923, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setComparisonMode: requires OpenGL >= 1.5 or OpenGL ES >= 3.0"); | - | ||||||||||||||||||
3061 | return; never executed: return; | 0 | ||||||||||||||||||
3062 | } | - | ||||||||||||||||||
3063 | d->comparisonMode = mode; | - | ||||||||||||||||||
3064 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x884C, mode); | - | ||||||||||||||||||
3065 | } never executed: end of block | 0 | ||||||||||||||||||
3066 | QOpenGLTexture::ComparisonMode QOpenGLTexture::comparisonMode() const | - | ||||||||||||||||||
3067 | { | - | ||||||||||||||||||
3068 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3069 | return never executed: d->comparisonMode;return d->comparisonMode; never executed: return d->comparisonMode; | 0 | ||||||||||||||||||
3070 | } | - | ||||||||||||||||||
3071 | - | |||||||||||||||||||
3072 | - | |||||||||||||||||||
3073 | - | |||||||||||||||||||
3074 | - | |||||||||||||||||||
3075 | - | |||||||||||||||||||
3076 | - | |||||||||||||||||||
3077 | void QOpenGLTexture::setMinificationFilter(QOpenGLTexture::Filter filter) | - | ||||||||||||||||||
3078 | { | - | ||||||||||||||||||
3079 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3080 | d->create(); | - | ||||||||||||||||||
3081 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3953) : qt_noop()); | - | ||||||||||||||||||
3082 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3954) : qt_noop()); | - | ||||||||||||||||||
3083 | d->minFilter = filter; | - | ||||||||||||||||||
3084 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x2801, filter); | - | ||||||||||||||||||
3085 | } never executed: end of block | 0 | ||||||||||||||||||
3086 | - | |||||||||||||||||||
3087 | - | |||||||||||||||||||
3088 | - | |||||||||||||||||||
3089 | - | |||||||||||||||||||
3090 | - | |||||||||||||||||||
3091 | - | |||||||||||||||||||
3092 | QOpenGLTexture::Filter QOpenGLTexture::minificationFilter() const | - | ||||||||||||||||||
3093 | { | - | ||||||||||||||||||
3094 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3095 | return never executed: d->minFilter;return d->minFilter; never executed: return d->minFilter; | 0 | ||||||||||||||||||
3096 | } | - | ||||||||||||||||||
3097 | - | |||||||||||||||||||
3098 | - | |||||||||||||||||||
3099 | - | |||||||||||||||||||
3100 | - | |||||||||||||||||||
3101 | - | |||||||||||||||||||
3102 | - | |||||||||||||||||||
3103 | void QOpenGLTexture::setMagnificationFilter(QOpenGLTexture::Filter filter) | - | ||||||||||||||||||
3104 | { | - | ||||||||||||||||||
3105 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3106 | d->create(); | - | ||||||||||||||||||
3107 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,3979) : qt_noop()); | - | ||||||||||||||||||
3108 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,3980) : qt_noop()); | - | ||||||||||||||||||
3109 | d->magFilter = filter; | - | ||||||||||||||||||
3110 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x2800, filter); | - | ||||||||||||||||||
3111 | } never executed: end of block | 0 | ||||||||||||||||||
3112 | - | |||||||||||||||||||
3113 | - | |||||||||||||||||||
3114 | - | |||||||||||||||||||
3115 | - | |||||||||||||||||||
3116 | - | |||||||||||||||||||
3117 | - | |||||||||||||||||||
3118 | QOpenGLTexture::Filter QOpenGLTexture::magnificationFilter() const | - | ||||||||||||||||||
3119 | { | - | ||||||||||||||||||
3120 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3121 | return never executed: d->magFilter;return d->magFilter; never executed: return d->magFilter; | 0 | ||||||||||||||||||
3122 | } | - | ||||||||||||||||||
3123 | - | |||||||||||||||||||
3124 | - | |||||||||||||||||||
3125 | - | |||||||||||||||||||
3126 | - | |||||||||||||||||||
3127 | - | |||||||||||||||||||
3128 | - | |||||||||||||||||||
3129 | - | |||||||||||||||||||
3130 | void QOpenGLTexture::setMinMagFilters(QOpenGLTexture::Filter minificationFilter, | - | ||||||||||||||||||
3131 | QOpenGLTexture::Filter magnificationFilter) | - | ||||||||||||||||||
3132 | { | - | ||||||||||||||||||
3133 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3134 | d->create(); | - | ||||||||||||||||||
3135 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4007) : qt_noop()); | - | ||||||||||||||||||
3136 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4008) : qt_noop()); | - | ||||||||||||||||||
3137 | d->minFilter = minificationFilter; | - | ||||||||||||||||||
3138 | d->magFilter = magnificationFilter; | - | ||||||||||||||||||
3139 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x2801, minificationFilter); | - | ||||||||||||||||||
3140 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x2800, magnificationFilter); | - | ||||||||||||||||||
3141 | } never executed: end of block | 0 | ||||||||||||||||||
3142 | - | |||||||||||||||||||
3143 | - | |||||||||||||||||||
3144 | - | |||||||||||||||||||
3145 | - | |||||||||||||||||||
3146 | - | |||||||||||||||||||
3147 | - | |||||||||||||||||||
3148 | QPair<QOpenGLTexture::Filter, QOpenGLTexture::Filter> QOpenGLTexture::minMagFilters() const | - | ||||||||||||||||||
3149 | { | - | ||||||||||||||||||
3150 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3151 | return never executed: QPair<QOpenGLTexture::Filter, QOpenGLTexture::Filter>(d->minFilter, d->magFilter);return QPair<QOpenGLTexture::Filter, QOpenGLTexture::Filter>(d->minFilter, d->magFilter); never executed: return QPair<QOpenGLTexture::Filter, QOpenGLTexture::Filter>(d->minFilter, d->magFilter); | 0 | ||||||||||||||||||
3152 | } | - | ||||||||||||||||||
3153 | - | |||||||||||||||||||
3154 | - | |||||||||||||||||||
3155 | - | |||||||||||||||||||
3156 | - | |||||||||||||||||||
3157 | - | |||||||||||||||||||
3158 | - | |||||||||||||||||||
3159 | - | |||||||||||||||||||
3160 | void QOpenGLTexture::setMaximumAnisotropy(float anisotropy) | - | ||||||||||||||||||
3161 | { | - | ||||||||||||||||||
3162 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3163 | d->create(); | - | ||||||||||||||||||
3164 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4036) : qt_noop()); | - | ||||||||||||||||||
3165 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4037) : qt_noop()); | - | ||||||||||||||||||
3166 | if (!d->features.testFlag(AnisotropicFiltering)
| 0 | ||||||||||||||||||
3167 | QMessageLogger(__FILE__, 4039, __PRETTY_FUNCTION__).warning("QOpenGLTexture::setMaximumAnisotropy() requires GL_EXT_texture_filter_anisotropic"); | - | ||||||||||||||||||
3168 | return; never executed: return; | 0 | ||||||||||||||||||
3169 | } | - | ||||||||||||||||||
3170 | d->maxAnisotropy = anisotropy; | - | ||||||||||||||||||
3171 | d->texFuncs->glTextureParameteri(d->textureId, d->target, d->bindingTarget, 0x84FE, anisotropy); | - | ||||||||||||||||||
3172 | } never executed: end of block | 0 | ||||||||||||||||||
3173 | - | |||||||||||||||||||
3174 | - | |||||||||||||||||||
3175 | - | |||||||||||||||||||
3176 | - | |||||||||||||||||||
3177 | - | |||||||||||||||||||
3178 | - | |||||||||||||||||||
3179 | - | |||||||||||||||||||
3180 | float QOpenGLTexture::maximumAnisotropy() const | - | ||||||||||||||||||
3181 | { | - | ||||||||||||||||||
3182 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3183 | return never executed: d->maxAnisotropy;return d->maxAnisotropy; never executed: return d->maxAnisotropy; | 0 | ||||||||||||||||||
3184 | } | - | ||||||||||||||||||
3185 | - | |||||||||||||||||||
3186 | - | |||||||||||||||||||
3187 | - | |||||||||||||||||||
3188 | - | |||||||||||||||||||
3189 | - | |||||||||||||||||||
3190 | - | |||||||||||||||||||
3191 | void QOpenGLTexture::setWrapMode(QOpenGLTexture::WrapMode mode) | - | ||||||||||||||||||
3192 | { | - | ||||||||||||||||||
3193 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3194 | d->create(); | - | ||||||||||||||||||
3195 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4067) : qt_noop()); | - | ||||||||||||||||||
3196 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4068) : qt_noop()); | - | ||||||||||||||||||
3197 | d->setWrapMode(mode); | - | ||||||||||||||||||
3198 | } never executed: end of block | 0 | ||||||||||||||||||
3199 | - | |||||||||||||||||||
3200 | - | |||||||||||||||||||
3201 | - | |||||||||||||||||||
3202 | - | |||||||||||||||||||
3203 | - | |||||||||||||||||||
3204 | void QOpenGLTexture::setWrapMode(QOpenGLTexture::CoordinateDirection direction, QOpenGLTexture::WrapMode mode) | - | ||||||||||||||||||
3205 | { | - | ||||||||||||||||||
3206 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3207 | d->create(); | - | ||||||||||||||||||
3208 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4080) : qt_noop()); | - | ||||||||||||||||||
3209 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4081) : qt_noop()); | - | ||||||||||||||||||
3210 | d->setWrapMode(direction, mode); | - | ||||||||||||||||||
3211 | } never executed: end of block | 0 | ||||||||||||||||||
3212 | - | |||||||||||||||||||
3213 | - | |||||||||||||||||||
3214 | - | |||||||||||||||||||
3215 | - | |||||||||||||||||||
3216 | - | |||||||||||||||||||
3217 | - | |||||||||||||||||||
3218 | QOpenGLTexture::WrapMode QOpenGLTexture::wrapMode(QOpenGLTexture::CoordinateDirection direction) const | - | ||||||||||||||||||
3219 | { | - | ||||||||||||||||||
3220 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3221 | return never executed: d->wrapMode(direction);return d->wrapMode(direction); never executed: return d->wrapMode(direction); | 0 | ||||||||||||||||||
3222 | } | - | ||||||||||||||||||
3223 | - | |||||||||||||||||||
3224 | - | |||||||||||||||||||
3225 | - | |||||||||||||||||||
3226 | - | |||||||||||||||||||
3227 | - | |||||||||||||||||||
3228 | - | |||||||||||||||||||
3229 | - | |||||||||||||||||||
3230 | void QOpenGLTexture::setBorderColor(QColor color) | - | ||||||||||||||||||
3231 | { | - | ||||||||||||||||||
3232 | - | |||||||||||||||||||
3233 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3234 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3235 | d->create(); | - | ||||||||||||||||||
3236 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4108) : qt_noop()); | - | ||||||||||||||||||
3237 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4109) : qt_noop()); | - | ||||||||||||||||||
3238 | float values[4]; | - | ||||||||||||||||||
3239 | values[0] = color.redF(); | - | ||||||||||||||||||
3240 | values[1] = color.greenF(); | - | ||||||||||||||||||
3241 | values[2] = color.blueF(); | - | ||||||||||||||||||
3242 | values[3] = color.alphaF(); | - | ||||||||||||||||||
3243 | d->borderColor.clear(); | - | ||||||||||||||||||
3244 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3245 | d->borderColor.append(QVariant(values[i])); never executed: d->borderColor.append(QVariant(values[i])); | 0 | ||||||||||||||||||
3246 | d->texFuncs->glTextureParameterfv(d->textureId, d->target, d->bindingTarget, 0x1004, values); | - | ||||||||||||||||||
3247 | return; never executed: return; | 0 | ||||||||||||||||||
3248 | } | - | ||||||||||||||||||
3249 | - | |||||||||||||||||||
3250 | - | |||||||||||||||||||
3251 | - | |||||||||||||||||||
3252 | QMessageLogger(__FILE__, 4124, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Border color is not supported"); | - | ||||||||||||||||||
3253 | } never executed: end of block | 0 | ||||||||||||||||||
3254 | - | |||||||||||||||||||
3255 | - | |||||||||||||||||||
3256 | - | |||||||||||||||||||
3257 | - | |||||||||||||||||||
3258 | - | |||||||||||||||||||
3259 | - | |||||||||||||||||||
3260 | void QOpenGLTexture::setBorderColor(float r, float g, float b, float a) | - | ||||||||||||||||||
3261 | { | - | ||||||||||||||||||
3262 | - | |||||||||||||||||||
3263 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3264 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3265 | d->create(); | - | ||||||||||||||||||
3266 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4138) : qt_noop()); | - | ||||||||||||||||||
3267 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4139) : qt_noop()); | - | ||||||||||||||||||
3268 | float values[4]; | - | ||||||||||||||||||
3269 | values[0] = r; | - | ||||||||||||||||||
3270 | values[1] = g; | - | ||||||||||||||||||
3271 | values[2] = b; | - | ||||||||||||||||||
3272 | values[3] = a; | - | ||||||||||||||||||
3273 | d->borderColor.clear(); | - | ||||||||||||||||||
3274 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3275 | d->borderColor.append(QVariant(values[i])); never executed: d->borderColor.append(QVariant(values[i])); | 0 | ||||||||||||||||||
3276 | d->texFuncs->glTextureParameterfv(d->textureId, d->target, d->bindingTarget, 0x1004, values); | - | ||||||||||||||||||
3277 | return; never executed: return; | 0 | ||||||||||||||||||
3278 | } | - | ||||||||||||||||||
3279 | - | |||||||||||||||||||
3280 | - | |||||||||||||||||||
3281 | - | |||||||||||||||||||
3282 | - | |||||||||||||||||||
3283 | - | |||||||||||||||||||
3284 | - | |||||||||||||||||||
3285 | QMessageLogger(__FILE__, 4157, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Border color is not supported"); | - | ||||||||||||||||||
3286 | } never executed: end of block | 0 | ||||||||||||||||||
3287 | - | |||||||||||||||||||
3288 | - | |||||||||||||||||||
3289 | - | |||||||||||||||||||
3290 | - | |||||||||||||||||||
3291 | - | |||||||||||||||||||
3292 | - | |||||||||||||||||||
3293 | void QOpenGLTexture::setBorderColor(int r, int g, int b, int a) | - | ||||||||||||||||||
3294 | { | - | ||||||||||||||||||
3295 | - | |||||||||||||||||||
3296 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3297 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3298 | d->create(); | - | ||||||||||||||||||
3299 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4171) : qt_noop()); | - | ||||||||||||||||||
3300 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4172) : qt_noop()); | - | ||||||||||||||||||
3301 | int values[4]; | - | ||||||||||||||||||
3302 | values[0] = r; | - | ||||||||||||||||||
3303 | values[1] = g; | - | ||||||||||||||||||
3304 | values[2] = b; | - | ||||||||||||||||||
3305 | values[3] = a; | - | ||||||||||||||||||
3306 | d->borderColor.clear(); | - | ||||||||||||||||||
3307 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3308 | d->borderColor.append(QVariant(values[i])); never executed: d->borderColor.append(QVariant(values[i])); | 0 | ||||||||||||||||||
3309 | d->texFuncs->glTextureParameteriv(d->textureId, d->target, d->bindingTarget, 0x1004, values); | - | ||||||||||||||||||
3310 | return; never executed: return; | 0 | ||||||||||||||||||
3311 | } | - | ||||||||||||||||||
3312 | - | |||||||||||||||||||
3313 | - | |||||||||||||||||||
3314 | - | |||||||||||||||||||
3315 | - | |||||||||||||||||||
3316 | - | |||||||||||||||||||
3317 | - | |||||||||||||||||||
3318 | QMessageLogger(__FILE__, 4190, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Border color is not supported"); | - | ||||||||||||||||||
3319 | - | |||||||||||||||||||
3320 | - | |||||||||||||||||||
3321 | } never executed: end of block | 0 | ||||||||||||||||||
3322 | - | |||||||||||||||||||
3323 | - | |||||||||||||||||||
3324 | - | |||||||||||||||||||
3325 | - | |||||||||||||||||||
3326 | - | |||||||||||||||||||
3327 | - | |||||||||||||||||||
3328 | void QOpenGLTexture::setBorderColor(uint r, uint g, uint b, uint a) | - | ||||||||||||||||||
3329 | { | - | ||||||||||||||||||
3330 | - | |||||||||||||||||||
3331 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3332 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3333 | d->create(); | - | ||||||||||||||||||
3334 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4206) : qt_noop()); | - | ||||||||||||||||||
3335 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4207) : qt_noop()); | - | ||||||||||||||||||
3336 | int values[4]; | - | ||||||||||||||||||
3337 | values[0] = int(r); | - | ||||||||||||||||||
3338 | values[1] = int(g); | - | ||||||||||||||||||
3339 | values[2] = int(b); | - | ||||||||||||||||||
3340 | values[3] = int(a); | - | ||||||||||||||||||
3341 | d->borderColor.clear(); | - | ||||||||||||||||||
3342 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3343 | d->borderColor.append(QVariant(values[i])); never executed: d->borderColor.append(QVariant(values[i])); | 0 | ||||||||||||||||||
3344 | d->texFuncs->glTextureParameteriv(d->textureId, d->target, d->bindingTarget, 0x1004, values); | - | ||||||||||||||||||
3345 | return; never executed: return; | 0 | ||||||||||||||||||
3346 | } | - | ||||||||||||||||||
3347 | - | |||||||||||||||||||
3348 | - | |||||||||||||||||||
3349 | - | |||||||||||||||||||
3350 | - | |||||||||||||||||||
3351 | - | |||||||||||||||||||
3352 | - | |||||||||||||||||||
3353 | QMessageLogger(__FILE__, 4225, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Border color is not supported"); | - | ||||||||||||||||||
3354 | - | |||||||||||||||||||
3355 | - | |||||||||||||||||||
3356 | } never executed: end of block | 0 | ||||||||||||||||||
3357 | - | |||||||||||||||||||
3358 | - | |||||||||||||||||||
3359 | - | |||||||||||||||||||
3360 | - | |||||||||||||||||||
3361 | - | |||||||||||||||||||
3362 | - | |||||||||||||||||||
3363 | QColor QOpenGLTexture::borderColor() const | - | ||||||||||||||||||
3364 | { | - | ||||||||||||||||||
3365 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3366 | QColor c(0.0f, 0.0f, 0.0f, 0.0f); | - | ||||||||||||||||||
3367 | if (!d->borderColor.isEmpty()
| 0 | ||||||||||||||||||
3368 | c.setRedF(d->borderColor.at(0).toFloat()); | - | ||||||||||||||||||
3369 | c.setGreenF(d->borderColor.at(1).toFloat()); | - | ||||||||||||||||||
3370 | c.setBlueF(d->borderColor.at(2).toFloat()); | - | ||||||||||||||||||
3371 | c.setAlphaF(d->borderColor.at(3).toFloat()); | - | ||||||||||||||||||
3372 | } never executed: end of block | 0 | ||||||||||||||||||
3373 | return never executed: c;return c; never executed: return c; | 0 | ||||||||||||||||||
3374 | } | - | ||||||||||||||||||
3375 | - | |||||||||||||||||||
3376 | - | |||||||||||||||||||
3377 | - | |||||||||||||||||||
3378 | - | |||||||||||||||||||
3379 | - | |||||||||||||||||||
3380 | - | |||||||||||||||||||
3381 | - | |||||||||||||||||||
3382 | void QOpenGLTexture::borderColor(float *border) const | - | ||||||||||||||||||
3383 | { | - | ||||||||||||||||||
3384 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3385 | ((!(border)) ? qt_assert("border",__FILE__,4257) : qt_noop()); | - | ||||||||||||||||||
3386 | if (d->borderColor.isEmpty()
| 0 | ||||||||||||||||||
3387 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3388 | border[i] = 0.0f; never executed: border[i] = 0.0f; | 0 | ||||||||||||||||||
3389 | } never executed: else {end of block | 0 | ||||||||||||||||||
3390 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3391 | border[i] = d->borderColor.at(i).toFloat(); never executed: border[i] = d->borderColor.at(i).toFloat(); | 0 | ||||||||||||||||||
3392 | } never executed: end of block | 0 | ||||||||||||||||||
3393 | } | - | ||||||||||||||||||
3394 | - | |||||||||||||||||||
3395 | - | |||||||||||||||||||
3396 | - | |||||||||||||||||||
3397 | - | |||||||||||||||||||
3398 | - | |||||||||||||||||||
3399 | - | |||||||||||||||||||
3400 | - | |||||||||||||||||||
3401 | void QOpenGLTexture::borderColor(int *border) const | - | ||||||||||||||||||
3402 | { | - | ||||||||||||||||||
3403 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3404 | ((!(border)) ? qt_assert("border",__FILE__,4276) : qt_noop()); | - | ||||||||||||||||||
3405 | if (d->borderColor.isEmpty()
| 0 | ||||||||||||||||||
3406 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3407 | border[i] = 0; never executed: border[i] = 0; | 0 | ||||||||||||||||||
3408 | } never executed: else {end of block | 0 | ||||||||||||||||||
3409 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3410 | border[i] = d->borderColor.at(i).toInt(); never executed: border[i] = d->borderColor.at(i).toInt(); | 0 | ||||||||||||||||||
3411 | } never executed: end of block | 0 | ||||||||||||||||||
3412 | } | - | ||||||||||||||||||
3413 | - | |||||||||||||||||||
3414 | - | |||||||||||||||||||
3415 | - | |||||||||||||||||||
3416 | - | |||||||||||||||||||
3417 | - | |||||||||||||||||||
3418 | - | |||||||||||||||||||
3419 | - | |||||||||||||||||||
3420 | void QOpenGLTexture::borderColor(unsigned int *border) const | - | ||||||||||||||||||
3421 | { | - | ||||||||||||||||||
3422 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3423 | ((!(border)) ? qt_assert("border",__FILE__,4295) : qt_noop()); | - | ||||||||||||||||||
3424 | if (d->borderColor.isEmpty()
| 0 | ||||||||||||||||||
3425 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3426 | border[i] = 0; never executed: border[i] = 0; | 0 | ||||||||||||||||||
3427 | } never executed: else {end of block | 0 | ||||||||||||||||||
3428 | for (int i = 0; i < 4
| 0 | ||||||||||||||||||
3429 | border[i] = d->borderColor.at(i).toUInt(); never executed: border[i] = d->borderColor.at(i).toUInt(); | 0 | ||||||||||||||||||
3430 | } never executed: end of block | 0 | ||||||||||||||||||
3431 | } | - | ||||||||||||||||||
3432 | void QOpenGLTexture::setMinimumLevelOfDetail(float value) | - | ||||||||||||||||||
3433 | { | - | ||||||||||||||||||
3434 | - | |||||||||||||||||||
3435 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3436 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3437 | d->create(); | - | ||||||||||||||||||
3438 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4318) : qt_noop()); | - | ||||||||||||||||||
3439 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4319) : qt_noop()); | - | ||||||||||||||||||
3440 | ((!(value < d->maxLevelOfDetail)) ? qt_assert("value < d->maxLevelOfDetail",__FILE__,4320) : qt_noop()); | - | ||||||||||||||||||
3441 | d->minLevelOfDetail = value; | - | ||||||||||||||||||
3442 | d->texFuncs->glTextureParameterf(d->textureId, d->target, d->bindingTarget, 0x813A, value); | - | ||||||||||||||||||
3443 | return; never executed: return; | 0 | ||||||||||||||||||
3444 | } | - | ||||||||||||||||||
3445 | - | |||||||||||||||||||
3446 | - | |||||||||||||||||||
3447 | - | |||||||||||||||||||
3448 | QMessageLogger(__FILE__, 4328, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Detail level is not supported"); | - | ||||||||||||||||||
3449 | } never executed: end of block | 0 | ||||||||||||||||||
3450 | - | |||||||||||||||||||
3451 | - | |||||||||||||||||||
3452 | - | |||||||||||||||||||
3453 | - | |||||||||||||||||||
3454 | - | |||||||||||||||||||
3455 | - | |||||||||||||||||||
3456 | float QOpenGLTexture::minimumLevelOfDetail() const | - | ||||||||||||||||||
3457 | { | - | ||||||||||||||||||
3458 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3459 | return never executed: d->minLevelOfDetail;return d->minLevelOfDetail; never executed: return d->minLevelOfDetail; | 0 | ||||||||||||||||||
3460 | } | - | ||||||||||||||||||
3461 | void QOpenGLTexture::setMaximumLevelOfDetail(float value) | - | ||||||||||||||||||
3462 | { | - | ||||||||||||||||||
3463 | - | |||||||||||||||||||
3464 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3465 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3466 | d->create(); | - | ||||||||||||||||||
3467 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4355) : qt_noop()); | - | ||||||||||||||||||
3468 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4356) : qt_noop()); | - | ||||||||||||||||||
3469 | ((!(value > d->minLevelOfDetail)) ? qt_assert("value > d->minLevelOfDetail",__FILE__,4357) : qt_noop()); | - | ||||||||||||||||||
3470 | d->maxLevelOfDetail = value; | - | ||||||||||||||||||
3471 | d->texFuncs->glTextureParameterf(d->textureId, d->target, d->bindingTarget, 0x813B, value); | - | ||||||||||||||||||
3472 | return; never executed: return; | 0 | ||||||||||||||||||
3473 | } | - | ||||||||||||||||||
3474 | - | |||||||||||||||||||
3475 | - | |||||||||||||||||||
3476 | - | |||||||||||||||||||
3477 | QMessageLogger(__FILE__, 4365, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Detail level is not supported"); | - | ||||||||||||||||||
3478 | } never executed: end of block | 0 | ||||||||||||||||||
3479 | - | |||||||||||||||||||
3480 | - | |||||||||||||||||||
3481 | - | |||||||||||||||||||
3482 | - | |||||||||||||||||||
3483 | - | |||||||||||||||||||
3484 | - | |||||||||||||||||||
3485 | float QOpenGLTexture::maximumLevelOfDetail() const | - | ||||||||||||||||||
3486 | { | - | ||||||||||||||||||
3487 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3488 | return never executed: d->maxLevelOfDetail;return d->maxLevelOfDetail; never executed: return d->maxLevelOfDetail; | 0 | ||||||||||||||||||
3489 | } | - | ||||||||||||||||||
3490 | - | |||||||||||||||||||
3491 | - | |||||||||||||||||||
3492 | - | |||||||||||||||||||
3493 | - | |||||||||||||||||||
3494 | - | |||||||||||||||||||
3495 | - | |||||||||||||||||||
3496 | - | |||||||||||||||||||
3497 | void QOpenGLTexture::setLevelOfDetailRange(float min, float max) | - | ||||||||||||||||||
3498 | { | - | ||||||||||||||||||
3499 | - | |||||||||||||||||||
3500 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3501 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3502 | d->create(); | - | ||||||||||||||||||
3503 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4391) : qt_noop()); | - | ||||||||||||||||||
3504 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4392) : qt_noop()); | - | ||||||||||||||||||
3505 | ((!(min < max)) ? qt_assert("min < max",__FILE__,4393) : qt_noop()); | - | ||||||||||||||||||
3506 | d->minLevelOfDetail = min; | - | ||||||||||||||||||
3507 | d->maxLevelOfDetail = max; | - | ||||||||||||||||||
3508 | d->texFuncs->glTextureParameterf(d->textureId, d->target, d->bindingTarget, 0x813A, min); | - | ||||||||||||||||||
3509 | d->texFuncs->glTextureParameterf(d->textureId, d->target, d->bindingTarget, 0x813B, max); | - | ||||||||||||||||||
3510 | return; never executed: return; | 0 | ||||||||||||||||||
3511 | } | - | ||||||||||||||||||
3512 | - | |||||||||||||||||||
3513 | - | |||||||||||||||||||
3514 | - | |||||||||||||||||||
3515 | - | |||||||||||||||||||
3516 | QMessageLogger(__FILE__, 4404, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Detail level is not supported"); | - | ||||||||||||||||||
3517 | } never executed: end of block | 0 | ||||||||||||||||||
3518 | - | |||||||||||||||||||
3519 | - | |||||||||||||||||||
3520 | - | |||||||||||||||||||
3521 | - | |||||||||||||||||||
3522 | - | |||||||||||||||||||
3523 | - | |||||||||||||||||||
3524 | QPair<float, float> QOpenGLTexture::levelOfDetailRange() const | - | ||||||||||||||||||
3525 | { | - | ||||||||||||||||||
3526 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3527 | return never executed: qMakePair(d->minLevelOfDetail, d->maxLevelOfDetail);return qMakePair(d->minLevelOfDetail, d->maxLevelOfDetail); never executed: return qMakePair(d->minLevelOfDetail, d->maxLevelOfDetail); | 0 | ||||||||||||||||||
3528 | } | - | ||||||||||||||||||
3529 | void QOpenGLTexture::setLevelofDetailBias(float bias) | - | ||||||||||||||||||
3530 | { | - | ||||||||||||||||||
3531 | - | |||||||||||||||||||
3532 | if (!QOpenGLContext::currentContext()->isOpenGLES()
| 0 | ||||||||||||||||||
3533 | QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3534 | d->create(); | - | ||||||||||||||||||
3535 | ((!(d->texFuncs)) ? qt_assert("d->texFuncs",__FILE__,4433) : qt_noop()); | - | ||||||||||||||||||
3536 | ((!(d->textureId)) ? qt_assert("d->textureId",__FILE__,4434) : qt_noop()); | - | ||||||||||||||||||
3537 | d->levelOfDetailBias = bias; | - | ||||||||||||||||||
3538 | d->texFuncs->glTextureParameterf(d->textureId, d->target, d->bindingTarget, 0x8501, bias); | - | ||||||||||||||||||
3539 | return; never executed: return; | 0 | ||||||||||||||||||
3540 | } | - | ||||||||||||||||||
3541 | - | |||||||||||||||||||
3542 | - | |||||||||||||||||||
3543 | - | |||||||||||||||||||
3544 | QMessageLogger(__FILE__, 4442, __PRETTY_FUNCTION__).warning("QOpenGLTexture: Detail level is not supported"); | - | ||||||||||||||||||
3545 | } never executed: end of block | 0 | ||||||||||||||||||
3546 | - | |||||||||||||||||||
3547 | - | |||||||||||||||||||
3548 | - | |||||||||||||||||||
3549 | - | |||||||||||||||||||
3550 | - | |||||||||||||||||||
3551 | - | |||||||||||||||||||
3552 | float QOpenGLTexture::levelofDetailBias() const | - | ||||||||||||||||||
3553 | { | - | ||||||||||||||||||
3554 | const QOpenGLTexturePrivate * const d = d_func(); | - | ||||||||||||||||||
3555 | return never executed: d->levelOfDetailBias;return d->levelOfDetailBias; never executed: return d->levelOfDetailBias; | 0 | ||||||||||||||||||
3556 | } | - | ||||||||||||||||||
3557 | - | |||||||||||||||||||
3558 | - | |||||||||||||||||||
Switch to Source code | Preprocessed file |