1 /*-------------------------------------------------------------------------
2 * OpenGL Conformance Test Suite
3 * -----------------------------
4 *
5 * Copyright (c) 2015-2016 The Khronos Group Inc.
6 *
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 *
19 */ /*!
20 * \file
21 * \brief
22 */ /*-------------------------------------------------------------------*/
23
24 /**
25 */ /*!
26 * \file gl4cDirectStateAccessTest.cpp
27 * \brief Conformance tests for the Direct State Access feature functionality.
28 */ /*-----------------------------------------------------------------------------*/
29
30 /* Includes. */
31 #include "gl4cDirectStateAccessTests.hpp"
32
33 #include "deSharedPtr.hpp"
34
35 #include "gluContextInfo.hpp"
36 #include "gluDefs.hpp"
37 #include "gluPixelTransfer.hpp"
38
39 #include "tcuFuzzyImageCompare.hpp"
40 #include "tcuImageCompare.hpp"
41 #include "tcuRenderTarget.hpp"
42 #include "tcuSurface.hpp"
43 #include "tcuTestLog.hpp"
44
45 #include "glw.h"
46 #include "glwFunctions.hpp"
47
48 namespace gl4cts
49 {
50 namespace DirectStateAccess
51 {
52
53 /** @brief Direct State Access Tests Group constructor.
54 *
55 * @param [in] context OpenGL context.
56 */
Tests(deqp::Context & context)57 Tests::Tests(deqp::Context &context) : TestCaseGroup(context, "direct_state_access", "Direct State Access Tests Suite")
58 {
59 }
60
61 /** @brief Direct State Access Tests initializer. */
init()62 void Tests::init()
63 {
64 /* Direct State Access of Transform Feedback Objects */
65 addChild(new TransformFeedback::CreationTest(m_context));
66 addChild(new TransformFeedback::DefaultsTest(m_context));
67 addChild(new TransformFeedback::BuffersTest(m_context));
68 addChild(new TransformFeedback::ErrorsTest(m_context));
69 addChild(new TransformFeedback::FunctionalTest(m_context));
70
71 /* Direct State Access of Sampler Objects */
72 addChild(new Samplers::CreationTest(m_context));
73 addChild(new Samplers::DefaultsTest(m_context));
74 addChild(new Samplers::ErrorsTest(m_context));
75 addChild(new Samplers::FunctionalTest(m_context));
76
77 /* Direct State Access of Program Pipeline Objects */
78 addChild(new ProgramPipelines::CreationTest(m_context));
79 addChild(new ProgramPipelines::DefaultsTest(m_context));
80 addChild(new ProgramPipelines::ErrorsTest(m_context));
81 addChild(new ProgramPipelines::FunctionalTest(m_context));
82
83 /* Direct State Access of Query Objects */
84 addChild(new Queries::CreationTest(m_context));
85 addChild(new Queries::DefaultsTest(m_context));
86 addChild(new Queries::ErrorsTest(m_context));
87 addChild(new Queries::FunctionalTest(m_context));
88 addChild(new Queries::ReuseTest(m_context));
89
90 /* Direct State Access of Buffer Objects */
91 addChild(new Buffers::CreationTest(m_context));
92 addChild(new Buffers::DataTest(m_context));
93 addChild(new Buffers::ClearTest(m_context));
94 addChild(new Buffers::MapReadOnlyTest(m_context));
95 addChild(new Buffers::MapReadWriteTest(m_context));
96 addChild(new Buffers::MapWriteOnlyTest(m_context));
97 addChild(new Buffers::MapRangeReadBitTest(m_context));
98 addChild(new Buffers::MapRangeWriteBitTest(m_context));
99 addChild(new Buffers::SubDataQueryTest(m_context));
100 addChild(new Buffers::DefaultsTest(m_context));
101 addChild(new Buffers::ErrorsTest(m_context));
102 addChild(new Buffers::FunctionalTest(m_context));
103
104 /* Direct State Access of Framebuffer Objects */
105 addChild(new Framebuffers::CreationTest(m_context));
106 addChild(new Framebuffers::RenderbufferAttachmentTest(m_context));
107 addChild(new Framebuffers::TextureAttachmentTest(m_context));
108 addChild(new Framebuffers::TextureLayerAttachmentTest(m_context));
109 addChild(new Framebuffers::DrawReadBufferTest(m_context));
110 addChild(new Framebuffers::DrawBuffersTest(m_context));
111 addChild(new Framebuffers::InvalidateDataTest(m_context));
112 addChild(new Framebuffers::InvalidateSubDataTest(m_context));
113 addChild(new Framebuffers::ClearTest(m_context));
114 addChild(new Framebuffers::BlitTest(m_context));
115 addChild(new Framebuffers::CheckStatusTest(m_context));
116 addChild(new Framebuffers::GetParametersTest(m_context));
117 addChild(new Framebuffers::GetAttachmentParametersTest(m_context));
118 addChild(new Framebuffers::CreationErrorsTest(m_context));
119 addChild(new Framebuffers::RenderbufferAttachmentErrorsTest(m_context));
120 addChild(new Framebuffers::TextureAttachmentErrorsTest(m_context));
121 addChild(new Framebuffers::DrawReadBuffersErrorsTest(m_context));
122 addChild(new Framebuffers::InvalidateDataAndSubDataErrorsTest(m_context));
123 addChild(new Framebuffers::ClearNamedFramebufferErrorsTest(m_context));
124 addChild(new Framebuffers::CheckStatusErrorsTest(m_context));
125 addChild(new Framebuffers::GetParameterErrorsTest(m_context));
126 addChild(new Framebuffers::GetAttachmentParameterErrorsTest(m_context));
127 addChild(new Framebuffers::FunctionalTest(m_context));
128
129 /* Direct State Access of Renderbuffer Objects */
130 addChild(new Renderbuffers::CreationTest(m_context));
131 addChild(new Renderbuffers::StorageTest(m_context));
132 addChild(new Renderbuffers::StorageMultisampleTest(m_context));
133 addChild(new Renderbuffers::GetParametersTest(m_context));
134 addChild(new Renderbuffers::CreationErrorsTest(m_context));
135 addChild(new Renderbuffers::StorageErrorsTest(m_context));
136 addChild(new Renderbuffers::StorageMultisampleErrorsTest(m_context));
137 addChild(new Renderbuffers::GetParameterErrorsTest(m_context));
138
139 /* Direct State Access of Vertex Array Objects */
140 addChild(new VertexArrays::CreationTest(m_context));
141 addChild(new VertexArrays::EnableDisableAttributesTest(m_context));
142 addChild(new VertexArrays::ElementBufferTest(m_context));
143 addChild(new VertexArrays::VertexBuffersTest(m_context));
144 addChild(new VertexArrays::AttributeFormatTest(m_context));
145 addChild(new VertexArrays::AttributeBindingTest(m_context));
146 addChild(new VertexArrays::AttributeBindingDivisorTest(m_context));
147 addChild(new VertexArrays::GetVertexArrayTest(m_context));
148 addChild(new VertexArrays::GetVertexArrayIndexedTest(m_context));
149 addChild(new VertexArrays::DefaultsTest(m_context));
150 addChild(new VertexArrays::CreationErrorTest(m_context));
151 addChild(new VertexArrays::EnableDisableAttributeErrorsTest(m_context));
152 addChild(new VertexArrays::ElementBufferErrorsTest(m_context));
153 addChild(new VertexArrays::VertexBuffersErrorsTest(m_context));
154 addChild(new VertexArrays::AttributeFormatErrorsTest(m_context));
155 addChild(new VertexArrays::AttributeBindingErrorsTest(m_context));
156 addChild(new VertexArrays::AttributeBindingDivisorErrorsTest(m_context));
157 addChild(new VertexArrays::GetVertexArrayErrorsTest(m_context));
158 addChild(new VertexArrays::GetVertexArrayIndexedErrorsTest(m_context));
159
160 /* Direct State Access of Tetxure Objects */
161 addChild(new Textures::CreationTest(m_context));
162
163 addChild(new Textures::BufferTest<glw::GLbyte, 1, false>(m_context, "textures_buffer_r8i"));
164 addChild(new Textures::BufferTest<glw::GLbyte, 2, false>(m_context, "textures_buffer_rg8i"));
165 addChild(new Textures::BufferTest<glw::GLbyte, 4, false>(m_context, "textures_buffer_rgba8i"));
166
167 addChild(new Textures::BufferTest<glw::GLubyte, 1, false>(m_context, "textures_buffer_r8ui"));
168 addChild(new Textures::BufferTest<glw::GLubyte, 2, false>(m_context, "textures_buffer_rg8ui"));
169 addChild(new Textures::BufferTest<glw::GLubyte, 4, false>(m_context, "textures_buffer_rgba8ui"));
170 addChild(new Textures::BufferTest<glw::GLubyte, 1, true>(m_context, "textures_buffer_r8ui_unorm"));
171 addChild(new Textures::BufferTest<glw::GLubyte, 2, true>(m_context, "textures_buffer_rg8ui_unorm"));
172 addChild(new Textures::BufferTest<glw::GLubyte, 4, true>(m_context, "textures_buffer_rgba8ui_unorm"));
173
174 addChild(new Textures::BufferTest<glw::GLshort, 1, false>(m_context, "textures_buffer_r16i"));
175 addChild(new Textures::BufferTest<glw::GLshort, 2, false>(m_context, "textures_buffer_rg16i"));
176 addChild(new Textures::BufferTest<glw::GLshort, 4, false>(m_context, "textures_buffer_rgba16i"));
177
178 addChild(new Textures::BufferTest<glw::GLushort, 1, false>(m_context, "textures_buffer_r16ui"));
179 addChild(new Textures::BufferTest<glw::GLushort, 2, false>(m_context, "textures_buffer_rg16ui"));
180 addChild(new Textures::BufferTest<glw::GLushort, 4, false>(m_context, "textures_buffer_rgba16ui"));
181 addChild(new Textures::BufferTest<glw::GLushort, 1, true>(m_context, "textures_buffer_r16ui_unorm"));
182 addChild(new Textures::BufferTest<glw::GLushort, 2, true>(m_context, "textures_buffer_rg16ui_unorm"));
183 addChild(new Textures::BufferTest<glw::GLushort, 4, true>(m_context, "textures_buffer_rgba16ui_unorm"));
184
185 addChild(new Textures::BufferTest<glw::GLint, 1, false>(m_context, "textures_buffer_r32i"));
186 addChild(new Textures::BufferTest<glw::GLint, 2, false>(m_context, "textures_buffer_rg32i"));
187 addChild(new Textures::BufferTest<glw::GLint, 3, false>(m_context, "textures_buffer_rgb32i"));
188 addChild(new Textures::BufferTest<glw::GLint, 4, false>(m_context, "textures_buffer_rgba32i"));
189
190 addChild(new Textures::BufferTest<glw::GLuint, 1, false>(m_context, "textures_buffer_r32ui"));
191 addChild(new Textures::BufferTest<glw::GLuint, 2, false>(m_context, "textures_buffer_rg32ui"));
192 addChild(new Textures::BufferTest<glw::GLuint, 3, false>(m_context, "textures_buffer_rgb32ui"));
193 addChild(new Textures::BufferTest<glw::GLuint, 4, false>(m_context, "textures_buffer_rgba32ui"));
194
195 addChild(new Textures::BufferTest<glw::GLfloat, 1, true>(m_context, "textures_buffer_r32f"));
196 addChild(new Textures::BufferTest<glw::GLfloat, 2, true>(m_context, "textures_buffer_rg32f"));
197 addChild(new Textures::BufferTest<glw::GLfloat, 3, true>(m_context, "textures_buffer_rgb32f"));
198 addChild(new Textures::BufferTest<glw::GLfloat, 4, true>(m_context, "textures_buffer_rgba32f"));
199
200 addChild(
201 new Textures::StorageAndSubImageTest<glw::GLbyte, 1, false, 1, false>(m_context, "textures_storage_1d_r8i"));
202 addChild(
203 new Textures::StorageAndSubImageTest<glw::GLbyte, 2, false, 1, false>(m_context, "textures_storage_1d_rg8i"));
204 addChild(
205 new Textures::StorageAndSubImageTest<glw::GLbyte, 4, false, 1, false>(m_context, "textures_storage_1d_rgba8i"));
206 addChild(
207 new Textures::StorageAndSubImageTest<glw::GLbyte, 1, false, 2, false>(m_context, "textures_storage_2d_r8i"));
208 addChild(
209 new Textures::StorageAndSubImageTest<glw::GLbyte, 2, false, 2, false>(m_context, "textures_storage_2d_rg8i"));
210 addChild(
211 new Textures::StorageAndSubImageTest<glw::GLbyte, 4, false, 2, false>(m_context, "textures_storage_2d_rgba8i"));
212 addChild(
213 new Textures::StorageAndSubImageTest<glw::GLbyte, 1, false, 3, false>(m_context, "textures_storage_3d_r8i"));
214 addChild(
215 new Textures::StorageAndSubImageTest<glw::GLbyte, 2, false, 3, false>(m_context, "textures_storage_3d_rg8i"));
216 addChild(
217 new Textures::StorageAndSubImageTest<glw::GLbyte, 4, false, 3, false>(m_context, "textures_storage_3d_rgba8i"));
218
219 addChild(
220 new Textures::StorageAndSubImageTest<glw::GLubyte, 1, false, 1, false>(m_context, "textures_storage_1d_r8ui"));
221 addChild(
222 new Textures::StorageAndSubImageTest<glw::GLubyte, 2, false, 1, false>(m_context, "textures_storage_1d_rg8ui"));
223 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, false, 1, false>(m_context,
224 "textures_storage_1d_rgba8ui"));
225 addChild(
226 new Textures::StorageAndSubImageTest<glw::GLubyte, 1, false, 2, false>(m_context, "textures_storage_2d_r8ui"));
227 addChild(
228 new Textures::StorageAndSubImageTest<glw::GLubyte, 2, false, 2, false>(m_context, "textures_storage_2d_rg8ui"));
229 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, false, 2, false>(m_context,
230 "textures_storage_2d_rgba8ui"));
231 addChild(
232 new Textures::StorageAndSubImageTest<glw::GLubyte, 1, false, 3, false>(m_context, "textures_storage_3d_r8ui"));
233 addChild(
234 new Textures::StorageAndSubImageTest<glw::GLubyte, 2, false, 3, false>(m_context, "textures_storage_3d_rg8ui"));
235 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, false, 3, false>(m_context,
236 "textures_storage_3d_rgba8ui"));
237
238 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 1, true, 1, false>(m_context,
239 "textures_storage_1d_r8ui_unorm"));
240 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 2, true, 1, false>(m_context,
241 "textures_storage_1d_rg8ui_unorm"));
242 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, true, 1, false>(
243 m_context, "textures_storage_1d_rgba8ui_unorm"));
244 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 1, true, 2, false>(m_context,
245 "textures_storage_2d_r8ui_unorm"));
246 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 2, true, 2, false>(m_context,
247 "textures_storage_2d_rg8ui_unorm"));
248 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, true, 2, false>(
249 m_context, "textures_storage_2d_rgba8ui_unorm"));
250 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 1, true, 3, false>(m_context,
251 "textures_storage_3d_r8ui_unorm"));
252 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 2, true, 3, false>(m_context,
253 "textures_storage_3d_rg8ui_unorm"));
254 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, true, 3, false>(
255 m_context, "textures_storage_3d_rgba8ui_unorm"));
256
257 addChild(
258 new Textures::StorageAndSubImageTest<glw::GLshort, 1, false, 1, false>(m_context, "textures_storage_1d_r16i"));
259 addChild(
260 new Textures::StorageAndSubImageTest<glw::GLshort, 2, false, 1, false>(m_context, "textures_storage_1d_rg16i"));
261 addChild(new Textures::StorageAndSubImageTest<glw::GLshort, 4, false, 1, false>(m_context,
262 "textures_storage_1d_rgba16i"));
263 addChild(
264 new Textures::StorageAndSubImageTest<glw::GLshort, 1, false, 2, false>(m_context, "textures_storage_2d_r16i"));
265 addChild(
266 new Textures::StorageAndSubImageTest<glw::GLshort, 2, false, 2, false>(m_context, "textures_storage_2d_rg16i"));
267 addChild(new Textures::StorageAndSubImageTest<glw::GLshort, 4, false, 2, false>(m_context,
268 "textures_storage_2d_rgba16i"));
269 addChild(
270 new Textures::StorageAndSubImageTest<glw::GLshort, 1, false, 3, false>(m_context, "textures_storage_3d_r16i"));
271 addChild(
272 new Textures::StorageAndSubImageTest<glw::GLshort, 2, false, 3, false>(m_context, "textures_storage_3d_rg16i"));
273 addChild(new Textures::StorageAndSubImageTest<glw::GLshort, 4, false, 3, false>(m_context,
274 "textures_storage_3d_rgba16i"));
275
276 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, false, 1, false>(m_context,
277 "textures_storage_1d_r16ui"));
278 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, false, 1, false>(m_context,
279 "textures_storage_1d_rg16ui"));
280 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, false, 1, false>(m_context,
281 "textures_storage_1d_rgba16ui"));
282 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, false, 2, false>(m_context,
283 "textures_storage_2d_r16ui"));
284 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, false, 2, false>(m_context,
285 "textures_storage_2d_rg16ui"));
286 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, false, 2, false>(m_context,
287 "textures_storage_2d_rgba16ui"));
288 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, false, 3, false>(m_context,
289 "textures_storage_3d_r16ui"));
290 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, false, 3, false>(m_context,
291 "textures_storage_3d_rg16ui"));
292 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, false, 3, false>(m_context,
293 "textures_storage_3d_rgba16ui"));
294
295 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, true, 1, false>(m_context,
296 "textures_storage_1d_r16ui_unorm"));
297 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, true, 1, false>(
298 m_context, "textures_storage_1d_rg16ui_unorm"));
299 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, true, 1, false>(
300 m_context, "textures_storage_1d_rgba16ui_unorm"));
301 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, true, 2, false>(m_context,
302 "textures_storage_2d_r16ui_unorm"));
303 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, true, 2, false>(
304 m_context, "textures_storage_2d_rg16ui_unorm"));
305 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, true, 2, false>(
306 m_context, "textures_storage_2d_rgba16ui_unorm"));
307 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, true, 3, false>(m_context,
308 "textures_storage_3d_r16ui_unorm"));
309 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, true, 3, false>(
310 m_context, "textures_storage_3d_rg16ui_unorm"));
311 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, true, 3, false>(
312 m_context, "textures_storage_3d_rgba16ui_unorm"));
313
314 addChild(
315 new Textures::StorageAndSubImageTest<glw::GLint, 1, false, 1, false>(m_context, "textures_storage_1d_r32i"));
316 addChild(
317 new Textures::StorageAndSubImageTest<glw::GLint, 2, false, 1, false>(m_context, "textures_storage_1d_rg32i"));
318 addChild(
319 new Textures::StorageAndSubImageTest<glw::GLint, 3, false, 1, false>(m_context, "textures_storage_1d_rgb32i"));
320 addChild(
321 new Textures::StorageAndSubImageTest<glw::GLint, 4, false, 1, false>(m_context, "textures_storage_1d_rgba32i"));
322 addChild(
323 new Textures::StorageAndSubImageTest<glw::GLint, 1, false, 2, false>(m_context, "textures_storage_2d_r32i"));
324 addChild(
325 new Textures::StorageAndSubImageTest<glw::GLint, 2, false, 2, false>(m_context, "textures_storage_2d_rg32i"));
326 addChild(
327 new Textures::StorageAndSubImageTest<glw::GLint, 3, false, 2, false>(m_context, "textures_storage_2d_rgb32i"));
328 addChild(
329 new Textures::StorageAndSubImageTest<glw::GLint, 4, false, 2, false>(m_context, "textures_storage_2d_rgba32i"));
330 addChild(
331 new Textures::StorageAndSubImageTest<glw::GLint, 1, false, 3, false>(m_context, "textures_storage_3d_r32i"));
332 addChild(
333 new Textures::StorageAndSubImageTest<glw::GLint, 2, false, 3, false>(m_context, "textures_storage_3d_rg32i"));
334 addChild(
335 new Textures::StorageAndSubImageTest<glw::GLint, 3, false, 3, false>(m_context, "textures_storage_3d_rgb32i"));
336 addChild(
337 new Textures::StorageAndSubImageTest<glw::GLint, 4, false, 3, false>(m_context, "textures_storage_3d_rgba32i"));
338
339 addChild(
340 new Textures::StorageAndSubImageTest<glw::GLuint, 1, false, 1, false>(m_context, "textures_storage_1d_r32ui"));
341 addChild(
342 new Textures::StorageAndSubImageTest<glw::GLuint, 2, false, 1, false>(m_context, "textures_storage_1d_rg32ui"));
343 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 3, false, 1, false>(m_context,
344 "textures_storage_1d_rgb32ui"));
345 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 4, false, 1, false>(m_context,
346 "textures_storage_1d_rgba32ui"));
347 addChild(
348 new Textures::StorageAndSubImageTest<glw::GLuint, 1, false, 2, false>(m_context, "textures_storage_2d_r32ui"));
349 addChild(
350 new Textures::StorageAndSubImageTest<glw::GLuint, 2, false, 2, false>(m_context, "textures_storage_2d_rg32ui"));
351 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 3, false, 2, false>(m_context,
352 "textures_storage_2d_rgb32ui"));
353 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 4, false, 2, false>(m_context,
354 "textures_storage_2d_rgba32ui"));
355 addChild(
356 new Textures::StorageAndSubImageTest<glw::GLuint, 1, false, 3, false>(m_context, "textures_storage_3d_r32ui"));
357 addChild(
358 new Textures::StorageAndSubImageTest<glw::GLuint, 2, false, 3, false>(m_context, "textures_storage_3d_rg32ui"));
359 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 3, false, 3, false>(m_context,
360 "textures_storage_3d_rgb32ui"));
361 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 4, false, 3, false>(m_context,
362 "textures_storage_3d_rgba32ui"));
363
364 addChild(
365 new Textures::StorageAndSubImageTest<glw::GLfloat, 1, true, 1, false>(m_context, "textures_storage_1d_r32f"));
366 addChild(
367 new Textures::StorageAndSubImageTest<glw::GLfloat, 2, true, 1, false>(m_context, "textures_storage_1d_rg32f"));
368 addChild(
369 new Textures::StorageAndSubImageTest<glw::GLfloat, 3, true, 1, false>(m_context, "textures_storage_1d_rgb32f"));
370 addChild(new Textures::StorageAndSubImageTest<glw::GLfloat, 4, true, 1, false>(m_context,
371 "textures_storage_1d_rgba32f"));
372 addChild(
373 new Textures::StorageAndSubImageTest<glw::GLfloat, 1, true, 2, false>(m_context, "textures_storage_2d_r32f"));
374 addChild(
375 new Textures::StorageAndSubImageTest<glw::GLfloat, 2, true, 2, false>(m_context, "textures_storage_2d_rg32f"));
376 addChild(
377 new Textures::StorageAndSubImageTest<glw::GLfloat, 3, true, 2, false>(m_context, "textures_storage_2d_rgb32f"));
378 addChild(new Textures::StorageAndSubImageTest<glw::GLfloat, 4, true, 2, false>(m_context,
379 "textures_storage_2d_rgba32f"));
380 addChild(
381 new Textures::StorageAndSubImageTest<glw::GLfloat, 1, true, 3, false>(m_context, "textures_storage_3d_r32f"));
382 addChild(
383 new Textures::StorageAndSubImageTest<glw::GLfloat, 2, true, 3, false>(m_context, "textures_storage_3d_rg32f"));
384 addChild(
385 new Textures::StorageAndSubImageTest<glw::GLfloat, 3, true, 3, false>(m_context, "textures_storage_3d_rgb32f"));
386 addChild(new Textures::StorageAndSubImageTest<glw::GLfloat, 4, true, 3, false>(m_context,
387 "textures_storage_3d_rgba32f"));
388
389 addChild(
390 new Textures::StorageAndSubImageTest<glw::GLbyte, 1, false, 1, true>(m_context, "textures_subimage_1d_r8i"));
391 addChild(
392 new Textures::StorageAndSubImageTest<glw::GLbyte, 2, false, 1, true>(m_context, "textures_subimage_1d_rg8i"));
393 addChild(
394 new Textures::StorageAndSubImageTest<glw::GLbyte, 4, false, 1, true>(m_context, "textures_subimage_1d_rgba8i"));
395 addChild(
396 new Textures::StorageAndSubImageTest<glw::GLbyte, 1, false, 2, true>(m_context, "textures_subimage_2d_r8i"));
397 addChild(
398 new Textures::StorageAndSubImageTest<glw::GLbyte, 2, false, 2, true>(m_context, "textures_subimage_2d_rg8i"));
399 addChild(
400 new Textures::StorageAndSubImageTest<glw::GLbyte, 4, false, 2, true>(m_context, "textures_subimage_2d_rgba8i"));
401 addChild(
402 new Textures::StorageAndSubImageTest<glw::GLbyte, 1, false, 3, true>(m_context, "textures_subimage_3d_r8i"));
403 addChild(
404 new Textures::StorageAndSubImageTest<glw::GLbyte, 2, false, 3, true>(m_context, "textures_subimage_3d_rg8i"));
405 addChild(
406 new Textures::StorageAndSubImageTest<glw::GLbyte, 4, false, 3, true>(m_context, "textures_subimage_3d_rgba8i"));
407
408 addChild(
409 new Textures::StorageAndSubImageTest<glw::GLubyte, 1, false, 1, true>(m_context, "textures_subimage_1d_r8ui"));
410 addChild(
411 new Textures::StorageAndSubImageTest<glw::GLubyte, 2, false, 1, true>(m_context, "textures_subimage_1d_rg8ui"));
412 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, false, 1, true>(m_context,
413 "textures_subimage_1d_rgba8ui"));
414 addChild(
415 new Textures::StorageAndSubImageTest<glw::GLubyte, 1, false, 2, true>(m_context, "textures_subimage_2d_r8ui"));
416 addChild(
417 new Textures::StorageAndSubImageTest<glw::GLubyte, 2, false, 2, true>(m_context, "textures_subimage_2d_rg8ui"));
418 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, false, 2, true>(m_context,
419 "textures_subimage_2d_rgba8ui"));
420 addChild(
421 new Textures::StorageAndSubImageTest<glw::GLubyte, 1, false, 3, true>(m_context, "textures_subimage_3d_r8ui"));
422 addChild(
423 new Textures::StorageAndSubImageTest<glw::GLubyte, 2, false, 3, true>(m_context, "textures_subimage_3d_rg8ui"));
424 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, false, 3, true>(m_context,
425 "textures_subimage_3d_rgba8ui"));
426
427 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 1, true, 1, true>(m_context,
428 "textures_subimage_1d_r8ui_unorm"));
429 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 2, true, 1, true>(m_context,
430 "textures_subimage_1d_rg8ui_unorm"));
431 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, true, 1, true>(
432 m_context, "textures_subimage_1d_rgba8ui_unorm"));
433 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 1, true, 2, true>(m_context,
434 "textures_subimage_2d_r8ui_unorm"));
435 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 2, true, 2, true>(m_context,
436 "textures_subimage_2d_rg8ui_unorm"));
437 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, true, 2, true>(
438 m_context, "textures_subimage_2d_rgba8ui_unorm"));
439 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 1, true, 3, true>(m_context,
440 "textures_subimage_3d_r8ui_unorm"));
441 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 2, true, 3, true>(m_context,
442 "textures_subimage_3d_rg8ui_unorm"));
443 addChild(new Textures::StorageAndSubImageTest<glw::GLubyte, 4, true, 3, true>(
444 m_context, "textures_subimage_3d_rgba8ui_unorm"));
445
446 addChild(
447 new Textures::StorageAndSubImageTest<glw::GLshort, 1, false, 1, true>(m_context, "textures_subimage_1d_r16i"));
448 addChild(
449 new Textures::StorageAndSubImageTest<glw::GLshort, 2, false, 1, true>(m_context, "textures_subimage_1d_rg16i"));
450 addChild(new Textures::StorageAndSubImageTest<glw::GLshort, 4, false, 1, true>(m_context,
451 "textures_subimage_1d_rgba16i"));
452 addChild(
453 new Textures::StorageAndSubImageTest<glw::GLshort, 1, false, 2, true>(m_context, "textures_subimage_2d_r16i"));
454 addChild(
455 new Textures::StorageAndSubImageTest<glw::GLshort, 2, false, 2, true>(m_context, "textures_subimage_2d_rg16i"));
456 addChild(new Textures::StorageAndSubImageTest<glw::GLshort, 4, false, 2, true>(m_context,
457 "textures_subimage_2d_rgba16i"));
458 addChild(
459 new Textures::StorageAndSubImageTest<glw::GLshort, 1, false, 3, true>(m_context, "textures_subimage_3d_r16i"));
460 addChild(
461 new Textures::StorageAndSubImageTest<glw::GLshort, 2, false, 3, true>(m_context, "textures_subimage_3d_rg16i"));
462 addChild(new Textures::StorageAndSubImageTest<glw::GLshort, 4, false, 3, true>(m_context,
463 "textures_subimage_3d_rgba16i"));
464
465 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, false, 1, true>(m_context,
466 "textures_subimage_1d_r16ui"));
467 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, false, 1, true>(m_context,
468 "textures_subimage_1d_rg16ui"));
469 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, false, 1, true>(m_context,
470 "textures_subimage_1d_rgba16ui"));
471 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, false, 2, true>(m_context,
472 "textures_subimage_2d_r16ui"));
473 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, false, 2, true>(m_context,
474 "textures_subimage_2d_rg16ui"));
475 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, false, 2, true>(m_context,
476 "textures_subimage_2d_rgba16ui"));
477 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, false, 3, true>(m_context,
478 "textures_subimage_3d_r16ui"));
479 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, false, 3, true>(m_context,
480 "textures_subimage_3d_rg16ui"));
481 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, false, 3, true>(m_context,
482 "textures_subimage_3d_rgba16ui"));
483
484 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, true, 1, true>(m_context,
485 "textures_subimage_1d_r16ui_unorm"));
486 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, true, 1, true>(
487 m_context, "textures_subimage_1d_rg16ui_unorm"));
488 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, true, 1, true>(
489 m_context, "textures_subimage_1d_rgba16ui_unorm"));
490 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, true, 2, true>(m_context,
491 "textures_subimage_2d_r16ui_unorm"));
492 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, true, 2, true>(
493 m_context, "textures_subimage_2d_rg16ui_unorm"));
494 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, true, 2, true>(
495 m_context, "textures_subimage_2d_rgba16ui_unorm"));
496 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 1, true, 3, true>(m_context,
497 "textures_subimage_3d_r16ui_unorm"));
498 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 2, true, 3, true>(
499 m_context, "textures_subimage_3d_rg16ui_unorm"));
500 addChild(new Textures::StorageAndSubImageTest<glw::GLushort, 4, true, 3, true>(
501 m_context, "textures_subimage_3d_rgba16ui_unorm"));
502
503 addChild(
504 new Textures::StorageAndSubImageTest<glw::GLint, 1, false, 1, true>(m_context, "textures_subimage_1d_r32i"));
505 addChild(
506 new Textures::StorageAndSubImageTest<glw::GLint, 2, false, 1, true>(m_context, "textures_subimage_1d_rg32i"));
507 addChild(
508 new Textures::StorageAndSubImageTest<glw::GLint, 3, false, 1, true>(m_context, "textures_subimage_1d_rgb32i"));
509 addChild(
510 new Textures::StorageAndSubImageTest<glw::GLint, 4, false, 1, true>(m_context, "textures_subimage_1d_rgba32i"));
511 addChild(
512 new Textures::StorageAndSubImageTest<glw::GLint, 1, false, 2, true>(m_context, "textures_subimage_2d_r32i"));
513 addChild(
514 new Textures::StorageAndSubImageTest<glw::GLint, 2, false, 2, true>(m_context, "textures_subimage_2d_rg32i"));
515 addChild(
516 new Textures::StorageAndSubImageTest<glw::GLint, 3, false, 2, true>(m_context, "textures_subimage_2d_rgb32i"));
517 addChild(
518 new Textures::StorageAndSubImageTest<glw::GLint, 4, false, 2, true>(m_context, "textures_subimage_2d_rgba32i"));
519 addChild(
520 new Textures::StorageAndSubImageTest<glw::GLint, 1, false, 3, true>(m_context, "textures_subimage_3d_r32i"));
521 addChild(
522 new Textures::StorageAndSubImageTest<glw::GLint, 2, false, 3, true>(m_context, "textures_subimage_3d_rg32i"));
523 addChild(
524 new Textures::StorageAndSubImageTest<glw::GLint, 3, false, 3, true>(m_context, "textures_subimage_3d_rgb32i"));
525 addChild(
526 new Textures::StorageAndSubImageTest<glw::GLint, 4, false, 3, true>(m_context, "textures_subimage_3d_rgba32i"));
527
528 addChild(
529 new Textures::StorageAndSubImageTest<glw::GLuint, 1, false, 1, true>(m_context, "textures_subimage_1d_r32ui"));
530 addChild(
531 new Textures::StorageAndSubImageTest<glw::GLuint, 2, false, 1, true>(m_context, "textures_subimage_1d_rg32ui"));
532 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 3, false, 1, true>(m_context,
533 "textures_subimage_1d_rgb32ui"));
534 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 4, false, 1, true>(m_context,
535 "textures_subimage_1d_rgba32ui"));
536 addChild(
537 new Textures::StorageAndSubImageTest<glw::GLuint, 1, false, 2, true>(m_context, "textures_subimage_2d_r32ui"));
538 addChild(
539 new Textures::StorageAndSubImageTest<glw::GLuint, 2, false, 2, true>(m_context, "textures_subimage_2d_rg32ui"));
540 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 3, false, 2, true>(m_context,
541 "textures_subimage_2d_rgb32ui"));
542 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 4, false, 2, true>(m_context,
543 "textures_subimage_2d_rgba32ui"));
544 addChild(
545 new Textures::StorageAndSubImageTest<glw::GLuint, 1, false, 3, true>(m_context, "textures_subimage_3d_r32ui"));
546 addChild(
547 new Textures::StorageAndSubImageTest<glw::GLuint, 2, false, 3, true>(m_context, "textures_subimage_3d_rg32ui"));
548 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 3, false, 3, true>(m_context,
549 "textures_subimage_3d_rgb32ui"));
550 addChild(new Textures::StorageAndSubImageTest<glw::GLuint, 4, false, 3, true>(m_context,
551 "textures_subimage_3d_rgba32ui"));
552
553 addChild(
554 new Textures::StorageAndSubImageTest<glw::GLfloat, 1, true, 1, true>(m_context, "textures_subimage_1d_r32f"));
555 addChild(
556 new Textures::StorageAndSubImageTest<glw::GLfloat, 2, true, 1, true>(m_context, "textures_subimage_1d_rg32f"));
557 addChild(
558 new Textures::StorageAndSubImageTest<glw::GLfloat, 3, true, 1, true>(m_context, "textures_subimage_1d_rgb32f"));
559 addChild(new Textures::StorageAndSubImageTest<glw::GLfloat, 4, true, 1, true>(m_context,
560 "textures_subimage_1d_rgba32f"));
561 addChild(
562 new Textures::StorageAndSubImageTest<glw::GLfloat, 1, true, 2, true>(m_context, "textures_subimage_2d_r32f"));
563 addChild(
564 new Textures::StorageAndSubImageTest<glw::GLfloat, 2, true, 2, true>(m_context, "textures_subimage_2d_rg32f"));
565 addChild(
566 new Textures::StorageAndSubImageTest<glw::GLfloat, 3, true, 2, true>(m_context, "textures_subimage_2d_rgb32f"));
567 addChild(new Textures::StorageAndSubImageTest<glw::GLfloat, 4, true, 2, true>(m_context,
568 "textures_subimage_2d_rgba32f"));
569 addChild(
570 new Textures::StorageAndSubImageTest<glw::GLfloat, 1, true, 3, true>(m_context, "textures_subimage_3d_r32f"));
571 addChild(
572 new Textures::StorageAndSubImageTest<glw::GLfloat, 2, true, 3, true>(m_context, "textures_subimage_3d_rg32f"));
573 addChild(
574 new Textures::StorageAndSubImageTest<glw::GLfloat, 3, true, 3, true>(m_context, "textures_subimage_3d_rgb32f"));
575 addChild(new Textures::StorageAndSubImageTest<glw::GLfloat, 4, true, 3, true>(m_context,
576 "textures_subimage_3d_rgba32f"));
577
578 addChild(new Textures::StorageMultisampleTest<glw::GLbyte, 1, false, 2>(m_context,
579 "textures_storage_multisample_2d_r8i"));
580 addChild(new Textures::StorageMultisampleTest<glw::GLbyte, 2, false, 2>(m_context,
581 "textures_storage_multisample_2d_rg8i"));
582 addChild(new Textures::StorageMultisampleTest<glw::GLbyte, 4, false, 2>(m_context,
583 "textures_storage_multisample_2d_rgba8i"));
584 addChild(new Textures::StorageMultisampleTest<glw::GLbyte, 1, false, 3>(m_context,
585 "textures_storage_multisample_3d_r8i"));
586 addChild(new Textures::StorageMultisampleTest<glw::GLbyte, 2, false, 3>(m_context,
587 "textures_storage_multisample_3d_rg8i"));
588 addChild(new Textures::StorageMultisampleTest<glw::GLbyte, 4, false, 3>(m_context,
589 "textures_storage_multisample_3d_rgba8i"));
590
591 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 1, false, 2>(m_context,
592 "textures_storage_multisample_2d_r8ui"));
593 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 2, false, 2>(m_context,
594 "textures_storage_multisample_2d_rg8ui"));
595 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 4, false, 2>(
596 m_context, "textures_storage_multisample_2d_rgba8ui"));
597 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 1, false, 3>(m_context,
598 "textures_storage_multisample_3d_r8ui"));
599 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 2, false, 3>(m_context,
600 "textures_storage_multisample_3d_rg8ui"));
601 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 4, false, 3>(
602 m_context, "textures_storage_multisample_3d_rgba8ui"));
603
604 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 1, true, 2>(
605 m_context, "textures_storage_multisample_2d_r8ui_unorm"));
606 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 2, true, 2>(
607 m_context, "textures_storage_multisample_2d_rg8ui_unorm"));
608 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 4, true, 2>(
609 m_context, "textures_storage_multisample_2d_rgba8ui_unorm"));
610 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 1, true, 3>(
611 m_context, "textures_storage_multisample_3d_r8ui_unorm"));
612 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 2, true, 3>(
613 m_context, "textures_storage_multisample_3d_rg8ui_unorm"));
614 addChild(new Textures::StorageMultisampleTest<glw::GLubyte, 4, true, 3>(
615 m_context, "textures_storage_multisample_3d_rgba8ui_unorm"));
616
617 addChild(new Textures::StorageMultisampleTest<glw::GLshort, 1, false, 2>(m_context,
618 "textures_storage_multisample_2d_r16i"));
619 addChild(new Textures::StorageMultisampleTest<glw::GLshort, 2, false, 2>(m_context,
620 "textures_storage_multisample_2d_rg16i"));
621 addChild(new Textures::StorageMultisampleTest<glw::GLshort, 4, false, 2>(
622 m_context, "textures_storage_multisample_2d_rgba16i"));
623 addChild(new Textures::StorageMultisampleTest<glw::GLshort, 1, false, 3>(m_context,
624 "textures_storage_multisample_3d_r16i"));
625 addChild(new Textures::StorageMultisampleTest<glw::GLshort, 2, false, 3>(m_context,
626 "textures_storage_multisample_3d_rg16i"));
627 addChild(new Textures::StorageMultisampleTest<glw::GLshort, 4, false, 3>(
628 m_context, "textures_storage_multisample_3d_rgba16i"));
629
630 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 1, false, 2>(m_context,
631 "textures_storage_multisample_2d_r16u"));
632 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 2, false, 2>(m_context,
633 "textures_storage_multisample_2d_rg16u"));
634 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 4, false, 2>(
635 m_context, "textures_storage_multisample_2d_rgba16u"));
636 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 1, false, 3>(m_context,
637 "textures_storage_multisample_3d_r16u"));
638 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 2, false, 3>(m_context,
639 "textures_storage_multisample_3d_rg16u"));
640 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 4, false, 3>(
641 m_context, "textures_storage_multisample_3d_rgba16u"));
642
643 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 1, true, 2>(
644 m_context, "textures_storage_multisample_2d_r16ui_unorm"));
645 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 2, true, 2>(
646 m_context, "textures_storage_multisample_2d_rg16ui_unorm"));
647 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 4, true, 2>(
648 m_context, "textures_storage_multisample_2d_rgba16ui_unorm"));
649 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 1, true, 3>(
650 m_context, "textures_storage_multisample_3d_r16ui_unorm"));
651 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 2, true, 3>(
652 m_context, "textures_storage_multisample_3d_rg16ui_unorm"));
653 addChild(new Textures::StorageMultisampleTest<glw::GLushort, 4, true, 3>(
654 m_context, "textures_storage_multisample_3d_rgba16ui_unorm"));
655
656 addChild(new Textures::StorageMultisampleTest<glw::GLint, 1, false, 2>(m_context,
657 "textures_storage_multisample_2d_r32i"));
658 addChild(new Textures::StorageMultisampleTest<glw::GLint, 2, false, 2>(m_context,
659 "textures_storage_multisample_2d_rg32i"));
660 addChild(new Textures::StorageMultisampleTest<glw::GLint, 3, false, 2>(m_context,
661 "textures_storage_multisample_2d_rgb32i"));
662 addChild(new Textures::StorageMultisampleTest<glw::GLint, 4, false, 2>(m_context,
663 "textures_storage_multisample_2d_rgba32i"));
664 addChild(new Textures::StorageMultisampleTest<glw::GLint, 1, false, 3>(m_context,
665 "textures_storage_multisample_3d_r32i"));
666 addChild(new Textures::StorageMultisampleTest<glw::GLint, 2, false, 3>(m_context,
667 "textures_storage_multisample_3d_rg32i"));
668 addChild(new Textures::StorageMultisampleTest<glw::GLint, 3, false, 3>(m_context,
669 "textures_storage_multisample_3d_rgb32i"));
670 addChild(new Textures::StorageMultisampleTest<glw::GLint, 4, false, 3>(m_context,
671 "textures_storage_multisample_3d_rgba32i"));
672
673 addChild(new Textures::StorageMultisampleTest<glw::GLuint, 1, false, 2>(m_context,
674 "textures_storage_multisample_2d_r32ui"));
675 addChild(new Textures::StorageMultisampleTest<glw::GLuint, 2, false, 2>(m_context,
676 "textures_storage_multisample_2d_rg32ui"));
677 addChild(new Textures::StorageMultisampleTest<glw::GLuint, 3, false, 2>(m_context,
678 "textures_storage_multisample_2d_rgb32ui"));
679 addChild(new Textures::StorageMultisampleTest<glw::GLuint, 4, false, 2>(
680 m_context, "textures_storage_multisample_2d_rgba32ui"));
681 addChild(new Textures::StorageMultisampleTest<glw::GLuint, 1, false, 3>(m_context,
682 "textures_storage_multisample_3d_r32ui"));
683 addChild(new Textures::StorageMultisampleTest<glw::GLuint, 2, false, 3>(m_context,
684 "textures_storage_multisample_3d_rg32ui"));
685 addChild(new Textures::StorageMultisampleTest<glw::GLuint, 3, false, 3>(m_context,
686 "textures_storage_multisample_3d_rgb32ui"));
687 addChild(new Textures::StorageMultisampleTest<glw::GLuint, 4, false, 3>(
688 m_context, "textures_storage_multisample_3d_rgba32ui"));
689
690 addChild(new Textures::StorageMultisampleTest<glw::GLfloat, 1, true, 2>(m_context,
691 "textures_storage_multisample_2d_r32f"));
692 addChild(new Textures::StorageMultisampleTest<glw::GLfloat, 2, true, 2>(m_context,
693 "textures_storage_multisample_2d_rg32f"));
694 addChild(new Textures::StorageMultisampleTest<glw::GLfloat, 3, true, 2>(m_context,
695 "textures_storage_multisample_2d_rgb32f"));
696 addChild(new Textures::StorageMultisampleTest<glw::GLfloat, 4, true, 2>(m_context,
697 "textures_storage_multisample_2d_rgba32f"));
698 addChild(new Textures::StorageMultisampleTest<glw::GLfloat, 1, true, 3>(m_context,
699 "textures_storage_multisample_3d_r32f"));
700 addChild(new Textures::StorageMultisampleTest<glw::GLfloat, 2, true, 3>(m_context,
701 "textures_storage_multisample_3d_rg32f"));
702 addChild(new Textures::StorageMultisampleTest<glw::GLfloat, 3, true, 3>(m_context,
703 "textures_storage_multisample_3d_rgb32f"));
704 addChild(new Textures::StorageMultisampleTest<glw::GLfloat, 4, true, 3>(m_context,
705 "textures_storage_multisample_3d_rgba32f"));
706
707 addChild(new Textures::CompressedSubImageTest(m_context));
708 addChild(new Textures::CopyTest(m_context));
709 addChild(new Textures::GetSetParameterTest(m_context));
710 addChild(new Textures::DefaultsTest(m_context));
711 addChild(new Textures::GenerateMipmapTest(m_context));
712 addChild(new Textures::BindUnitTest(m_context));
713 addChild(new Textures::GetImageTest(m_context));
714 addChild(new Textures::GetLevelParameterTest(m_context));
715 addChild(new Textures::CreationErrorsTest(m_context));
716 addChild(new Textures::BufferErrorsTest(m_context));
717 addChild(new Textures::BufferRangeErrorsTest(m_context));
718 addChild(new Textures::StorageErrorsTest(m_context));
719 addChild(new Textures::SubImageErrorsTest(m_context));
720 addChild(new Textures::CopyErrorsTest(m_context));
721 addChild(new Textures::ParameterSetupErrorsTest(m_context));
722 addChild(new Textures::GenerateMipmapErrorsTest(m_context));
723 addChild(new Textures::BindUnitErrorsTest(m_context));
724 addChild(new Textures::ImageQueryErrorsTest(m_context));
725 addChild(new Textures::LevelParameterErrorsTest(m_context));
726 addChild(new Textures::ParameterErrorsTest(m_context));
727 }
728 } // namespace DirectStateAccess
729 } // namespace gl4cts
730