1 #ifndef _VULKAN_JSON_DATA_HPP
2 #define _VULKAN_JSON_DATA_HPP
3
4 /*
5 * Copyright (c) 2021 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 Defines JSON generators for Vulkan structures
22 */
23
24
25 /********************************************************************************************/
26 /** This code is generated. To make changes, please modify the scripts or the relevant xml **/
27 /********************************************************************************************/
28
29 #include <iostream>
30 #include <map>
31 #include <bitset>
32 #include <functional>
33 #include <sstream>
34 #include <cassert>
35 #include <cmath>
36 #ifndef VULKAN_JSON_CTS
37 #include <vulkan/vulkan.h>
38 #endif
39
40 #ifdef _WIN32
41 #ifndef WIN32_LEAN_AND_MEAN
42 #define WIN32_LEAN_AND_MEAN
43 #endif
44 #define VC_EXTRALEAN
45 #define NOMINMAX
46 #include <windows.h>
47 #endif
48
49 namespace vk_json {
50
51 static thread_local int s_num_spaces = 0;
52 #if defined(USE_THREAD_LOCAL_WAR)
53 // Workaround (off by default) for certain platforms that have a thread_local libc bug
54 std::stringstream & TLSGetStrStream();
55 #define _string_stream TLSGetStrStream()
56 #else
57 static thread_local std::stringstream _string_stream;
58 #endif
59
60 static void dumpPNextChain(const void* pNext);
61
62 // By default, redirect to std::cout. Can stream it to a stringstream if needed.
63 //#define _OUT std::cout
64 #define _OUT _string_stream
65
66 // Helper utility to do indentation in the generated json file.
67 #define PRINT_SPACE for (int k = 0; k < s_num_spaces; k++) _OUT << " ";
68
69 #define INDENT(sz) s_num_spaces += (sz);
70
71 #define PRINT_VAL(c) PRINT_SPACE \
72 if (s != "") {\
73 _OUT << "\"" << s << "\"" << " : " << o << (c ? "," : "") << std::endl; \
74 } else {\
75 _OUT << o << (c ? "," : "") << std::endl; \
76 }
77
78 #define PRINT_STR(c) PRINT_SPACE \
79 if (s != "") {\
80 _OUT << "\"" << s << "\"" << " : " << "\"" << o << "\"" << (c ? "," : "") << std::endl; \
81 } else {\
82 _OUT << "\"" << o << "\"" << (c ? "," : "") << std::endl; \
83 }
84
85 // To make sure the generated data is consistent across platforms,
86 // we typecast to 32-bit and dump the data.
87 // The value is not expected to exceed the range.
print_size_t(const size_t * o,const std::string & s,bool commaNeeded=true)88 static void print_size_t(const size_t* o, const std::string& s, bool commaNeeded=true)
89 {
90 PRINT_SPACE
91 _OUT << "\"" << s << "\"" << " : " << static_cast<deUint32>(*o) << (commaNeeded ? "," : "") << std::endl;\
92 }
print_size_t(size_t o,const std::string & s,bool commaNeeded=true)93 static void print_size_t(size_t o, const std::string& s, bool commaNeeded=true)
94 {
95 PRINT_SPACE
96 _OUT << "\"" << s << "\"" << " : " << static_cast<deUint32>(o) << (commaNeeded ? "," : "") << std::endl;\
97 }
98
print_int32_t(deInt32 o,const std::string & s,bool commaNeeded=true)99 static void print_int32_t(deInt32 o, const std::string& s, bool commaNeeded=true)
100 {
101 PRINT_VAL(commaNeeded)
102 }
103
print_int32_t(const deInt32 * o,const std::string & s,bool commaNeeded=true)104 static void print_int32_t(const deInt32 * o, const std::string& s, bool commaNeeded=true)
105 {
106 PRINT_VAL(commaNeeded)
107 }
108
print_uint32_t(deUint32 o,const std::string & s,bool commaNeeded=true)109 static void print_uint32_t(deUint32 o, const std::string& s, bool commaNeeded=true)
110 {
111 PRINT_VAL(commaNeeded)
112 }
113
print_uint32_t(const deUint32 * o,const std::string & s,bool commaNeeded=true)114 static void print_uint32_t(const deUint32 * o, const std::string& s, bool commaNeeded=true)
115 {
116 PRINT_VAL(commaNeeded)
117 }
118
print_uint8_t(deUint8 o,const std::string & s,bool commaNeeded=true)119 static void print_uint8_t(deUint8 o, const std::string& s, bool commaNeeded=true)
120 {
121 PRINT_VAL(commaNeeded)
122 }
123
print_uint8_t(const deUint8 * o,const std::string & s,bool commaNeeded=true)124 static void print_uint8_t(const deUint8 * o, const std::string& s, bool commaNeeded=true)
125 {
126 PRINT_VAL(commaNeeded)
127 }
128
print_uint64_t(deUint64 o,const std::string & s,bool commaNeeded=true)129 static void print_uint64_t(deUint64 o, const std::string& s, bool commaNeeded=true)
130 {
131 PRINT_VAL(commaNeeded)
132 }
133
print_uint64_t(const deUint64 * o,const std::string & s,bool commaNeeded=true)134 static void print_uint64_t(const deUint64 * o, const std::string& s, bool commaNeeded=true)
135 {
136 PRINT_VAL(commaNeeded)
137 }
138
print_float(float o,const std::string & s,bool commaNeeded=true)139 static void print_float(float o, const std::string& s, bool commaNeeded=true)
140 {
141 if (std::isnan(o))
142 {
143 PRINT_SPACE
144 if (s != "")
145 _OUT << "\"" << s << "\"" << " : \"NaN\"" << (commaNeeded ? "," : "") << std::endl;
146 else
147 _OUT << "\"NaN\"" << (commaNeeded ? "," : "") << std::endl;
148 }
149 else
150 {
151 PRINT_VAL(commaNeeded)
152 }
153 }
154
print_float(const float * o,const std::string & s,bool commaNeeded=true)155 static void print_float(const float * o, const std::string& s, bool commaNeeded=true)
156 {
157 if (std::isnan(*o))
158 {
159 PRINT_SPACE
160 if (s != "")
161 _OUT << "\"" << s << "\"" << " : \"NaN\"" << (commaNeeded ? "," : "") << std::endl;
162 else
163 _OUT << "\"NaN\"" << (commaNeeded ? "," : "") << std::endl;
164 }
165 else
166 {
167 PRINT_VAL(commaNeeded)
168 }
169 }
170
print_int(int o,const std::string & s,bool commaNeeded=true)171 static void print_int(int o, const std::string& s, bool commaNeeded=true)
172 {
173 PRINT_VAL(commaNeeded)
174 }
175
print_int(const int * o,const std::string & s,bool commaNeeded=true)176 static void print_int(const int * o, const std::string& s, bool commaNeeded=true)
177 {
178 PRINT_VAL(commaNeeded)
179 }
180
print_double(double o,const std::string & s,bool commaNeeded=true)181 static void print_double(double o, const std::string& s, bool commaNeeded=true)
182 {
183 PRINT_VAL(commaNeeded)
184 }
185
print_double(const double * o,const std::string & s,bool commaNeeded=true)186 static void print_double(const double * o, const std::string& s, bool commaNeeded=true)
187 {
188 PRINT_VAL(commaNeeded)
189 }
190
print_int64_t(deInt64 o,const std::string & s,bool commaNeeded=true)191 static void print_int64_t(deInt64 o, const std::string& s, bool commaNeeded=true)
192 {
193 PRINT_VAL(commaNeeded)
194 }
195
print_int64_t(const deInt64 * o,const std::string & s,bool commaNeeded=true)196 static void print_int64_t(const deInt64 * o, const std::string& s, bool commaNeeded=true)
197 {
198 PRINT_VAL(commaNeeded)
199 }
200
print_uint16_t(deUint16 o,const std::string & s,bool commaNeeded=true)201 static void print_uint16_t(deUint16 o, const std::string& s, bool commaNeeded=true)
202 {
203 PRINT_VAL(commaNeeded)
204 }
205
print_uint16_t(const deUint16 * o,const std::string & s,bool commaNeeded=true)206 static void print_uint16_t(const deUint16 * o, const std::string& s, bool commaNeeded=true)
207 {
208 PRINT_VAL(commaNeeded)
209 }
210
print_char(const char * const * o,const std::string & s,bool commaNeeded=true)211 static void print_char(const char * const* o, const std::string& s, bool commaNeeded=true)
212 {
213 PRINT_STR(commaNeeded)
214 }
215
print_char(char o,const std::string & s,bool commaNeeded=true)216 static void print_char(char o, const std::string& s, bool commaNeeded=true)
217 {
218 PRINT_VAL(commaNeeded)
219 }
220
print_char(const char * o,const std::string & s,bool commaNeeded=true)221 static void print_char(const char * o, const std::string& s, bool commaNeeded=true)
222 {
223 PRINT_STR(commaNeeded)
224 }
225
226
227 // Base 64 formater class from executor/xeTestLogWriter.cpp
228
229 class Base64Formatter
230 {
231 public:
232 const deUint8* data;
233 int numBytes;
234
Base64Formatter(const deUint8 * data_,int numBytes_)235 Base64Formatter(const deUint8* data_, int numBytes_) : data(data_), numBytes(numBytes_) {}
236 };
237
operator <<(std::ostream & str,const Base64Formatter & fmt)238 std::ostream& operator<< (std::ostream& str, const Base64Formatter& fmt)
239 {
240 static const char s_base64Table[64] =
241 {
242 'A','B','C','D','E','F','G','H','I','J','K','L','M',
243 'N','O','P','Q','R','S','T','U','V','W','X','Y','Z',
244 'a','b','c','d','e','f','g','h','i','j','k','l','m',
245 'n','o','p','q','r','s','t','u','v','w','x','y','z',
246 '0','1','2','3','4','5','6','7','8','9','+','/'
247 };
248
249 const deUint8* data = fmt.data;
250 int numBytes = fmt.numBytes;
251 int srcNdx = 0;
252
253 DE_ASSERT(data && (numBytes > 0));
254
255 /* Loop all input chars. */
256 while (srcNdx < numBytes)
257 {
258 int numRead = de::min(3, numBytes - srcNdx);
259 deUint8 s0 = data[srcNdx];
260 deUint8 s1 = (numRead >= 2) ? data[srcNdx + 1] : 0;
261 deUint8 s2 = (numRead >= 3) ? data[srcNdx + 2] : 0;
262 char d[4];
263
264 srcNdx += numRead;
265
266 d[0] = s_base64Table[s0 >> 2];
267 d[1] = s_base64Table[((s0 & 0x3) << 4) | (s1 >> 4)];
268 d[2] = s_base64Table[((s1 & 0xF) << 2) | (s2 >> 6)];
269 d[3] = s_base64Table[s2 & 0x3F];
270
271 if (numRead < 3) d[3] = '=';
272 if (numRead < 2) d[2] = '=';
273
274 /* Write data. */
275 str.write(&d[0], sizeof(d));
276 }
277
278 return str;
279 }
280
toBase64(const deUint8 * bytes,int numBytes)281 inline Base64Formatter toBase64(const deUint8* bytes, int numBytes) {return Base64Formatter(bytes, numBytes); }
282
print_void_data(const void * o,int oSize,const std::string & s,bool commaNeeded=true)283 static void print_void_data(const void * o, int oSize, const std::string& s, bool commaNeeded=true)
284 {
285 if (o != NULL && oSize != 0)
286 {
287 PRINT_SPACE _OUT << "\"" << s << "\"" << " : " << "\"" << toBase64((deUint8*)o, oSize) << "\"" << (commaNeeded ? "," : "") << std::endl;
288 }
289 else
290 {
291 PRINT_SPACE _OUT << "\"" << s << "\"" << " : " << "\"NULL\"" << (commaNeeded ? "," : "") << std::endl;
292 }
293 }
294
print_VkBool32(VkBool32 obj,const std::string & str,bool commaNeeded=true)295 static void print_VkBool32(VkBool32 obj, const std::string& str, bool commaNeeded=true) {
296 PRINT_SPACE
297 _OUT << "\"" << str << "\"" << " : " << "\"" << ((obj == 0) ? ("VK_FALSE") : ("VK_TRUE")) << "\"" << (commaNeeded ? "," : "") << std::endl;
298 }
print_VkBool32(const VkBool32 * obj,const std::string & str,bool commaNeeded=true)299 static void print_VkBool32(const VkBool32 * obj, const std::string& str, bool commaNeeded=true) {
300 PRINT_SPACE
301 _OUT << "\"" << str << "\"" << " : " << "\"" << ((obj == 0) ? ("VK_FALSE") : ("VK_TRUE")) << "\"" << (commaNeeded ? "," : "") << std::endl;
302 }
303
print_VkDeviceAddress(VkDeviceAddress obj,const std::string & str,bool commaNeeded=true)304 static void print_VkDeviceAddress(VkDeviceAddress obj, const std::string& str, bool commaNeeded=true) {
305 PRINT_SPACE
306 _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
307 }
print_VkDeviceAddress(const VkDeviceAddress * obj,const std::string & str,bool commaNeeded=true)308 static void print_VkDeviceAddress(const VkDeviceAddress * obj, const std::string& str, bool commaNeeded=true) {
309 PRINT_SPACE
310 _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
311 }
312
print_VkDeviceSize(VkDeviceSize obj,const std::string & str,bool commaNeeded=true)313 static void print_VkDeviceSize(VkDeviceSize obj, const std::string& str, bool commaNeeded=true) {
314 PRINT_SPACE
315 _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
316 }
print_VkDeviceSize(const VkDeviceSize * obj,const std::string & str,bool commaNeeded=true)317 static void print_VkDeviceSize(const VkDeviceSize * obj, const std::string& str, bool commaNeeded=true) {
318 PRINT_SPACE
319 _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
320 }
321
print_VkFlags(VkFlags obj,const std::string & str,bool commaNeeded=true)322 static void print_VkFlags(VkFlags obj, const std::string& str, bool commaNeeded=true) {
323 PRINT_SPACE
324 _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
325 }
print_VkFlags(const VkFlags * obj,const std::string & str,bool commaNeeded=true)326 static void print_VkFlags(const VkFlags * obj, const std::string& str, bool commaNeeded=true) {
327 PRINT_SPACE
328 _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
329 }
330
print_VkSampleMask(VkSampleMask obj,const std::string & str,bool commaNeeded=true)331 static void print_VkSampleMask(VkSampleMask obj, const std::string& str, bool commaNeeded=true) {
332 PRINT_SPACE
333 _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
334 }
print_VkSampleMask(const VkSampleMask * obj,const std::string & str,bool commaNeeded=true)335 static void print_VkSampleMask(const VkSampleMask * obj, const std::string& str, bool commaNeeded=true) {
336 PRINT_SPACE
337 _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
338 }
339
print_VkBuffer(VkBuffer obj,const std::string & str,bool commaNeeded=true)340 static void print_VkBuffer(VkBuffer obj, const std::string& str, bool commaNeeded=true) {
341 PRINT_SPACE
342 if (commaNeeded)
343 _OUT << "\"" << str << "\"" << "," << std::endl;
344 else
345 _OUT << "\"" << str << "\"" << std::endl;
346 }
print_VkBuffer(const VkBuffer * obj,const std::string & str,bool commaNeeded=true)347 static void print_VkBuffer(const VkBuffer * obj, const std::string& str, bool commaNeeded=true) {
348 PRINT_SPACE
349 if (commaNeeded)
350 _OUT << "\"" << str << "\"" << "," << std::endl;
351 else
352 _OUT << "\"" << str << "\"" << std::endl;
353 }
354
print_VkImage(VkImage obj,const std::string & str,bool commaNeeded=true)355 static void print_VkImage(VkImage obj, const std::string& str, bool commaNeeded=true) {
356 PRINT_SPACE
357 if (commaNeeded)
358 _OUT << "\"" << str << "\"" << "," << std::endl;
359 else
360 _OUT << "\"" << str << "\"" << std::endl;
361 }
print_VkImage(const VkImage * obj,const std::string & str,bool commaNeeded=true)362 static void print_VkImage(const VkImage * obj, const std::string& str, bool commaNeeded=true) {
363 PRINT_SPACE
364 if (commaNeeded)
365 _OUT << "\"" << str << "\"" << "," << std::endl;
366 else
367 _OUT << "\"" << str << "\"" << std::endl;
368 }
369
print_VkInstance(VkInstance obj,const std::string & str,bool commaNeeded=true)370 static void print_VkInstance(VkInstance obj, const std::string& str, bool commaNeeded=true) {
371 PRINT_SPACE
372 if (commaNeeded)
373 _OUT << "\"" << str << "\"" << "," << std::endl;
374 else
375 _OUT << "\"" << str << "\"" << std::endl;
376 }
print_VkInstance(const VkInstance * obj,const std::string & str,bool commaNeeded=true)377 static void print_VkInstance(const VkInstance * obj, const std::string& str, bool commaNeeded=true) {
378 PRINT_SPACE
379 if (commaNeeded)
380 _OUT << "\"" << str << "\"" << "," << std::endl;
381 else
382 _OUT << "\"" << str << "\"" << std::endl;
383 }
384
print_VkPhysicalDevice(VkPhysicalDevice obj,const std::string & str,bool commaNeeded=true)385 static void print_VkPhysicalDevice(VkPhysicalDevice obj, const std::string& str, bool commaNeeded=true) {
386 PRINT_SPACE
387 if (commaNeeded)
388 _OUT << "\"" << str << "\"" << "," << std::endl;
389 else
390 _OUT << "\"" << str << "\"" << std::endl;
391 }
print_VkPhysicalDevice(const VkPhysicalDevice * obj,const std::string & str,bool commaNeeded=true)392 static void print_VkPhysicalDevice(const VkPhysicalDevice * obj, const std::string& str, bool commaNeeded=true) {
393 PRINT_SPACE
394 if (commaNeeded)
395 _OUT << "\"" << str << "\"" << "," << std::endl;
396 else
397 _OUT << "\"" << str << "\"" << std::endl;
398 }
399
print_VkDevice(VkDevice obj,const std::string & str,bool commaNeeded=true)400 static void print_VkDevice(VkDevice obj, const std::string& str, bool commaNeeded=true) {
401 PRINT_SPACE
402 if (commaNeeded)
403 _OUT << "\"" << str << "\"" << "," << std::endl;
404 else
405 _OUT << "\"" << str << "\"" << std::endl;
406 }
print_VkDevice(const VkDevice * obj,const std::string & str,bool commaNeeded=true)407 static void print_VkDevice(const VkDevice * obj, const std::string& str, bool commaNeeded=true) {
408 PRINT_SPACE
409 if (commaNeeded)
410 _OUT << "\"" << str << "\"" << "," << std::endl;
411 else
412 _OUT << "\"" << str << "\"" << std::endl;
413 }
414
print_VkQueue(VkQueue obj,const std::string & str,bool commaNeeded=true)415 static void print_VkQueue(VkQueue obj, const std::string& str, bool commaNeeded=true) {
416 PRINT_SPACE
417 if (commaNeeded)
418 _OUT << "\"" << str << "\"" << "," << std::endl;
419 else
420 _OUT << "\"" << str << "\"" << std::endl;
421 }
print_VkQueue(const VkQueue * obj,const std::string & str,bool commaNeeded=true)422 static void print_VkQueue(const VkQueue * obj, const std::string& str, bool commaNeeded=true) {
423 PRINT_SPACE
424 if (commaNeeded)
425 _OUT << "\"" << str << "\"" << "," << std::endl;
426 else
427 _OUT << "\"" << str << "\"" << std::endl;
428 }
429
print_VkSemaphore(VkSemaphore obj,const std::string & str,bool commaNeeded=true)430 static void print_VkSemaphore(VkSemaphore obj, const std::string& str, bool commaNeeded=true) {
431 PRINT_SPACE
432 if (commaNeeded)
433 _OUT << "\"" << str << "\"" << "," << std::endl;
434 else
435 _OUT << "\"" << str << "\"" << std::endl;
436 }
print_VkSemaphore(const VkSemaphore * obj,const std::string & str,bool commaNeeded=true)437 static void print_VkSemaphore(const VkSemaphore * obj, const std::string& str, bool commaNeeded=true) {
438 PRINT_SPACE
439 if (commaNeeded)
440 _OUT << "\"" << str << "\"" << "," << std::endl;
441 else
442 _OUT << "\"" << str << "\"" << std::endl;
443 }
444
print_VkCommandBuffer(VkCommandBuffer obj,const std::string & str,bool commaNeeded=true)445 static void print_VkCommandBuffer(VkCommandBuffer obj, const std::string& str, bool commaNeeded=true) {
446 PRINT_SPACE
447 if (commaNeeded)
448 _OUT << "\"" << str << "\"" << "," << std::endl;
449 else
450 _OUT << "\"" << str << "\"" << std::endl;
451 }
print_VkCommandBuffer(const VkCommandBuffer * obj,const std::string & str,bool commaNeeded=true)452 static void print_VkCommandBuffer(const VkCommandBuffer * obj, const std::string& str, bool commaNeeded=true) {
453 PRINT_SPACE
454 if (commaNeeded)
455 _OUT << "\"" << str << "\"" << "," << std::endl;
456 else
457 _OUT << "\"" << str << "\"" << std::endl;
458 }
459
print_VkFence(VkFence obj,const std::string & str,bool commaNeeded=true)460 static void print_VkFence(VkFence obj, const std::string& str, bool commaNeeded=true) {
461 PRINT_SPACE
462 if (commaNeeded)
463 _OUT << "\"" << str << "\"" << "," << std::endl;
464 else
465 _OUT << "\"" << str << "\"" << std::endl;
466 }
print_VkFence(const VkFence * obj,const std::string & str,bool commaNeeded=true)467 static void print_VkFence(const VkFence * obj, const std::string& str, bool commaNeeded=true) {
468 PRINT_SPACE
469 if (commaNeeded)
470 _OUT << "\"" << str << "\"" << "," << std::endl;
471 else
472 _OUT << "\"" << str << "\"" << std::endl;
473 }
474
print_VkDeviceMemory(VkDeviceMemory obj,const std::string & str,bool commaNeeded=true)475 static void print_VkDeviceMemory(VkDeviceMemory obj, const std::string& str, bool commaNeeded=true) {
476 PRINT_SPACE
477 if (commaNeeded)
478 _OUT << "\"" << str << "\"" << "," << std::endl;
479 else
480 _OUT << "\"" << str << "\"" << std::endl;
481 }
print_VkDeviceMemory(const VkDeviceMemory * obj,const std::string & str,bool commaNeeded=true)482 static void print_VkDeviceMemory(const VkDeviceMemory * obj, const std::string& str, bool commaNeeded=true) {
483 PRINT_SPACE
484 if (commaNeeded)
485 _OUT << "\"" << str << "\"" << "," << std::endl;
486 else
487 _OUT << "\"" << str << "\"" << std::endl;
488 }
489
print_VkEvent(VkEvent obj,const std::string & str,bool commaNeeded=true)490 static void print_VkEvent(VkEvent obj, const std::string& str, bool commaNeeded=true) {
491 PRINT_SPACE
492 if (commaNeeded)
493 _OUT << "\"" << str << "\"" << "," << std::endl;
494 else
495 _OUT << "\"" << str << "\"" << std::endl;
496 }
print_VkEvent(const VkEvent * obj,const std::string & str,bool commaNeeded=true)497 static void print_VkEvent(const VkEvent * obj, const std::string& str, bool commaNeeded=true) {
498 PRINT_SPACE
499 if (commaNeeded)
500 _OUT << "\"" << str << "\"" << "," << std::endl;
501 else
502 _OUT << "\"" << str << "\"" << std::endl;
503 }
504
print_VkQueryPool(VkQueryPool obj,const std::string & str,bool commaNeeded=true)505 static void print_VkQueryPool(VkQueryPool obj, const std::string& str, bool commaNeeded=true) {
506 PRINT_SPACE
507 if (commaNeeded)
508 _OUT << "\"" << str << "\"" << "," << std::endl;
509 else
510 _OUT << "\"" << str << "\"" << std::endl;
511 }
print_VkQueryPool(const VkQueryPool * obj,const std::string & str,bool commaNeeded=true)512 static void print_VkQueryPool(const VkQueryPool * obj, const std::string& str, bool commaNeeded=true) {
513 PRINT_SPACE
514 if (commaNeeded)
515 _OUT << "\"" << str << "\"" << "," << std::endl;
516 else
517 _OUT << "\"" << str << "\"" << std::endl;
518 }
519
print_VkBufferView(VkBufferView obj,const std::string & str,bool commaNeeded=true)520 static void print_VkBufferView(VkBufferView obj, const std::string& str, bool commaNeeded=true) {
521 PRINT_SPACE
522 if (commaNeeded)
523 _OUT << "\"" << str << "\"" << "," << std::endl;
524 else
525 _OUT << "\"" << str << "\"" << std::endl;
526 }
print_VkBufferView(const VkBufferView * obj,const std::string & str,bool commaNeeded=true)527 static void print_VkBufferView(const VkBufferView * obj, const std::string& str, bool commaNeeded=true) {
528 PRINT_SPACE
529 if (commaNeeded)
530 _OUT << "\"" << str << "\"" << "," << std::endl;
531 else
532 _OUT << "\"" << str << "\"" << std::endl;
533 }
534
print_VkImageView(VkImageView obj,const std::string & str,bool commaNeeded=true)535 static void print_VkImageView(VkImageView obj, const std::string& str, bool commaNeeded=true) {
536 PRINT_SPACE
537 if (commaNeeded)
538 _OUT << "\"" << str << "\"" << "," << std::endl;
539 else
540 _OUT << "\"" << str << "\"" << std::endl;
541 }
print_VkImageView(const VkImageView * obj,const std::string & str,bool commaNeeded=true)542 static void print_VkImageView(const VkImageView * obj, const std::string& str, bool commaNeeded=true) {
543 PRINT_SPACE
544 if (commaNeeded)
545 _OUT << "\"" << str << "\"" << "," << std::endl;
546 else
547 _OUT << "\"" << str << "\"" << std::endl;
548 }
549
print_VkShaderModule(VkShaderModule obj,const std::string & str,bool commaNeeded=true)550 static void print_VkShaderModule(VkShaderModule obj, const std::string& str, bool commaNeeded=true) {
551 PRINT_SPACE
552 if (commaNeeded)
553 _OUT << "\"" << str << "\"" << "," << std::endl;
554 else
555 _OUT << "\"" << str << "\"" << std::endl;
556 }
print_VkShaderModule(const VkShaderModule * obj,const std::string & str,bool commaNeeded=true)557 static void print_VkShaderModule(const VkShaderModule * obj, const std::string& str, bool commaNeeded=true) {
558 PRINT_SPACE
559 if (commaNeeded)
560 _OUT << "\"" << str << "\"" << "," << std::endl;
561 else
562 _OUT << "\"" << str << "\"" << std::endl;
563 }
564
print_VkPipelineCache(VkPipelineCache obj,const std::string & str,bool commaNeeded=true)565 static void print_VkPipelineCache(VkPipelineCache obj, const std::string& str, bool commaNeeded=true) {
566 PRINT_SPACE
567 if (commaNeeded)
568 _OUT << "\"" << str << "\"" << "," << std::endl;
569 else
570 _OUT << "\"" << str << "\"" << std::endl;
571 }
print_VkPipelineCache(const VkPipelineCache * obj,const std::string & str,bool commaNeeded=true)572 static void print_VkPipelineCache(const VkPipelineCache * obj, const std::string& str, bool commaNeeded=true) {
573 PRINT_SPACE
574 if (commaNeeded)
575 _OUT << "\"" << str << "\"" << "," << std::endl;
576 else
577 _OUT << "\"" << str << "\"" << std::endl;
578 }
579
print_VkPipelineLayout(VkPipelineLayout obj,const std::string & str,bool commaNeeded=true)580 static void print_VkPipelineLayout(VkPipelineLayout obj, const std::string& str, bool commaNeeded=true) {
581 PRINT_SPACE
582 if (commaNeeded)
583 _OUT << "\"" << str << "\"" << "," << std::endl;
584 else
585 _OUT << "\"" << str << "\"" << std::endl;
586 }
print_VkPipelineLayout(const VkPipelineLayout * obj,const std::string & str,bool commaNeeded=true)587 static void print_VkPipelineLayout(const VkPipelineLayout * obj, const std::string& str, bool commaNeeded=true) {
588 PRINT_SPACE
589 if (commaNeeded)
590 _OUT << "\"" << str << "\"" << "," << std::endl;
591 else
592 _OUT << "\"" << str << "\"" << std::endl;
593 }
594
print_VkPipeline(VkPipeline obj,const std::string & str,bool commaNeeded=true)595 static void print_VkPipeline(VkPipeline obj, const std::string& str, bool commaNeeded=true) {
596 PRINT_SPACE
597 if (commaNeeded)
598 _OUT << "\"" << str << "\"" << "," << std::endl;
599 else
600 _OUT << "\"" << str << "\"" << std::endl;
601 }
print_VkPipeline(const VkPipeline * obj,const std::string & str,bool commaNeeded=true)602 static void print_VkPipeline(const VkPipeline * obj, const std::string& str, bool commaNeeded=true) {
603 PRINT_SPACE
604 if (commaNeeded)
605 _OUT << "\"" << str << "\"" << "," << std::endl;
606 else
607 _OUT << "\"" << str << "\"" << std::endl;
608 }
609
print_VkRenderPass(VkRenderPass obj,const std::string & str,bool commaNeeded=true)610 static void print_VkRenderPass(VkRenderPass obj, const std::string& str, bool commaNeeded=true) {
611 PRINT_SPACE
612 if (commaNeeded)
613 _OUT << "\"" << str << "\"" << "," << std::endl;
614 else
615 _OUT << "\"" << str << "\"" << std::endl;
616 }
print_VkRenderPass(const VkRenderPass * obj,const std::string & str,bool commaNeeded=true)617 static void print_VkRenderPass(const VkRenderPass * obj, const std::string& str, bool commaNeeded=true) {
618 PRINT_SPACE
619 if (commaNeeded)
620 _OUT << "\"" << str << "\"" << "," << std::endl;
621 else
622 _OUT << "\"" << str << "\"" << std::endl;
623 }
624
print_VkDescriptorSetLayout(VkDescriptorSetLayout obj,const std::string & str,bool commaNeeded=true)625 static void print_VkDescriptorSetLayout(VkDescriptorSetLayout obj, const std::string& str, bool commaNeeded=true) {
626 PRINT_SPACE
627 if (commaNeeded)
628 _OUT << "\"" << str << "\"" << "," << std::endl;
629 else
630 _OUT << "\"" << str << "\"" << std::endl;
631 }
print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj,const std::string & str,bool commaNeeded=true)632 static void print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj, const std::string& str, bool commaNeeded=true) {
633 PRINT_SPACE
634 if (commaNeeded)
635 _OUT << "\"" << str << "\"" << "," << std::endl;
636 else
637 _OUT << "\"" << str << "\"" << std::endl;
638 }
639
print_VkSampler(VkSampler obj,const std::string & str,bool commaNeeded=true)640 static void print_VkSampler(VkSampler obj, const std::string& str, bool commaNeeded=true) {
641 PRINT_SPACE
642 if (commaNeeded)
643 _OUT << "\"" << str << "\"" << "," << std::endl;
644 else
645 _OUT << "\"" << str << "\"" << std::endl;
646 }
print_VkSampler(const VkSampler * obj,const std::string & str,bool commaNeeded=true)647 static void print_VkSampler(const VkSampler * obj, const std::string& str, bool commaNeeded=true) {
648 PRINT_SPACE
649 if (commaNeeded)
650 _OUT << "\"" << str << "\"" << "," << std::endl;
651 else
652 _OUT << "\"" << str << "\"" << std::endl;
653 }
654
print_VkDescriptorSet(VkDescriptorSet obj,const std::string & str,bool commaNeeded=true)655 static void print_VkDescriptorSet(VkDescriptorSet obj, const std::string& str, bool commaNeeded=true) {
656 PRINT_SPACE
657 if (commaNeeded)
658 _OUT << "\"" << str << "\"" << "," << std::endl;
659 else
660 _OUT << "\"" << str << "\"" << std::endl;
661 }
print_VkDescriptorSet(const VkDescriptorSet * obj,const std::string & str,bool commaNeeded=true)662 static void print_VkDescriptorSet(const VkDescriptorSet * obj, const std::string& str, bool commaNeeded=true) {
663 PRINT_SPACE
664 if (commaNeeded)
665 _OUT << "\"" << str << "\"" << "," << std::endl;
666 else
667 _OUT << "\"" << str << "\"" << std::endl;
668 }
669
print_VkDescriptorPool(VkDescriptorPool obj,const std::string & str,bool commaNeeded=true)670 static void print_VkDescriptorPool(VkDescriptorPool obj, const std::string& str, bool commaNeeded=true) {
671 PRINT_SPACE
672 if (commaNeeded)
673 _OUT << "\"" << str << "\"" << "," << std::endl;
674 else
675 _OUT << "\"" << str << "\"" << std::endl;
676 }
print_VkDescriptorPool(const VkDescriptorPool * obj,const std::string & str,bool commaNeeded=true)677 static void print_VkDescriptorPool(const VkDescriptorPool * obj, const std::string& str, bool commaNeeded=true) {
678 PRINT_SPACE
679 if (commaNeeded)
680 _OUT << "\"" << str << "\"" << "," << std::endl;
681 else
682 _OUT << "\"" << str << "\"" << std::endl;
683 }
684
print_VkFramebuffer(VkFramebuffer obj,const std::string & str,bool commaNeeded=true)685 static void print_VkFramebuffer(VkFramebuffer obj, const std::string& str, bool commaNeeded=true) {
686 PRINT_SPACE
687 if (commaNeeded)
688 _OUT << "\"" << str << "\"" << "," << std::endl;
689 else
690 _OUT << "\"" << str << "\"" << std::endl;
691 }
print_VkFramebuffer(const VkFramebuffer * obj,const std::string & str,bool commaNeeded=true)692 static void print_VkFramebuffer(const VkFramebuffer * obj, const std::string& str, bool commaNeeded=true) {
693 PRINT_SPACE
694 if (commaNeeded)
695 _OUT << "\"" << str << "\"" << "," << std::endl;
696 else
697 _OUT << "\"" << str << "\"" << std::endl;
698 }
699
print_VkCommandPool(VkCommandPool obj,const std::string & str,bool commaNeeded=true)700 static void print_VkCommandPool(VkCommandPool obj, const std::string& str, bool commaNeeded=true) {
701 PRINT_SPACE
702 if (commaNeeded)
703 _OUT << "\"" << str << "\"" << "," << std::endl;
704 else
705 _OUT << "\"" << str << "\"" << std::endl;
706 }
print_VkCommandPool(const VkCommandPool * obj,const std::string & str,bool commaNeeded=true)707 static void print_VkCommandPool(const VkCommandPool * obj, const std::string& str, bool commaNeeded=true) {
708 PRINT_SPACE
709 if (commaNeeded)
710 _OUT << "\"" << str << "\"" << "," << std::endl;
711 else
712 _OUT << "\"" << str << "\"" << std::endl;
713 }
714
715 static std::map<deUint64, std::string> VkResult_map = {
716 std::make_pair(0, "VK_SUCCESS"),
717 std::make_pair(1, "VK_NOT_READY"),
718 std::make_pair(2, "VK_TIMEOUT"),
719 std::make_pair(3, "VK_EVENT_SET"),
720 std::make_pair(4, "VK_EVENT_RESET"),
721 std::make_pair(5, "VK_INCOMPLETE"),
722 std::make_pair(-1, "VK_ERROR_OUT_OF_HOST_MEMORY"),
723 std::make_pair(-2, "VK_ERROR_OUT_OF_DEVICE_MEMORY"),
724 std::make_pair(-3, "VK_ERROR_INITIALIZATION_FAILED"),
725 std::make_pair(-4, "VK_ERROR_DEVICE_LOST"),
726 std::make_pair(-5, "VK_ERROR_MEMORY_MAP_FAILED"),
727 std::make_pair(-6, "VK_ERROR_LAYER_NOT_PRESENT"),
728 std::make_pair(-7, "VK_ERROR_EXTENSION_NOT_PRESENT"),
729 std::make_pair(-8, "VK_ERROR_FEATURE_NOT_PRESENT"),
730 std::make_pair(-9, "VK_ERROR_INCOMPATIBLE_DRIVER"),
731 std::make_pair(-10, "VK_ERROR_TOO_MANY_OBJECTS"),
732 std::make_pair(-11, "VK_ERROR_FORMAT_NOT_SUPPORTED"),
733 std::make_pair(-12, "VK_ERROR_FRAGMENTED_POOL"),
734 std::make_pair(-13, "VK_ERROR_UNKNOWN"),
735 std::make_pair(1000069000, "VK_ERROR_OUT_OF_POOL_MEMORY"),
736 std::make_pair(1000072003, "VK_ERROR_INVALID_EXTERNAL_HANDLE"),
737 std::make_pair(1000161000, "VK_ERROR_FRAGMENTATION"),
738 std::make_pair(1000257000, "VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS"),
739 std::make_pair(1000011001, "VK_ERROR_VALIDATION_FAILED"),
740 std::make_pair(1000298000, "VK_ERROR_INVALID_PIPELINE_CACHE_DATA"),
741 std::make_pair(1000298001, "VK_ERROR_NO_PIPELINE_MATCH"),
742 std::make_pair(1000000000, "VK_ERROR_SURFACE_LOST_KHR"),
743 std::make_pair(1000000001, "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR"),
744 std::make_pair(1000001003, "VK_SUBOPTIMAL_KHR"),
745 std::make_pair(1000001004, "VK_ERROR_OUT_OF_DATE_KHR"),
746 std::make_pair(1000003001, "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR"),
747 std::make_pair(1000012000, "VK_ERROR_INVALID_SHADER_NV"),
748 std::make_pair(1000158000, "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT"),
749 std::make_pair(1000174001, "VK_ERROR_NOT_PERMITTED_EXT"),
750 std::make_pair(1000255000, "VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT"),
751 std::make_pair(1000268000, "VK_THREAD_IDLE_KHR"),
752 std::make_pair(1000268001, "VK_THREAD_DONE_KHR"),
753 std::make_pair(1000268002, "VK_OPERATION_DEFERRED_KHR"),
754 std::make_pair(1000268003, "VK_OPERATION_NOT_DEFERRED_KHR"),
755 std::make_pair(1000297000, "VK_PIPELINE_COMPILE_REQUIRED_EXT"),
756 };
print_VkResult(VkResult obj,const std::string & str,bool commaNeeded=true)757 static void print_VkResult(VkResult obj, const std::string& str, bool commaNeeded=true) {
758 PRINT_SPACE
759 if (str != "") _OUT << "\"" << str << "\"" << " : ";
760 if (commaNeeded)
761 _OUT << "\"" << VkResult_map[obj] << "\"," << std::endl;
762 else
763 _OUT << "\"" << VkResult_map[obj] << "\"" << std::endl;
764 }
print_VkResult(const VkResult * obj,const std::string & str,bool commaNeeded=true)765 static void print_VkResult(const VkResult * obj, const std::string& str, bool commaNeeded=true) {
766 PRINT_SPACE
767 if (str != "") _OUT << "\"" << str << "\"" << " : ";
768 if (commaNeeded)
769 _OUT << "\"" << VkResult_map[*obj] << "\"," << std::endl;
770 else
771 _OUT << "\"" << VkResult_map[*obj] << "\"" << std::endl;
772 }
773
774 static std::map<deUint64, std::string> VkStructureType_map = {
775 std::make_pair(0, "VK_STRUCTURE_TYPE_APPLICATION_INFO"),
776 std::make_pair(1, "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO"),
777 std::make_pair(2, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO"),
778 std::make_pair(3, "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO"),
779 std::make_pair(4, "VK_STRUCTURE_TYPE_SUBMIT_INFO"),
780 std::make_pair(5, "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO"),
781 std::make_pair(6, "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE"),
782 std::make_pair(8, "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO"),
783 std::make_pair(9, "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO"),
784 std::make_pair(10, "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO"),
785 std::make_pair(11, "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO"),
786 std::make_pair(12, "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO"),
787 std::make_pair(13, "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO"),
788 std::make_pair(14, "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO"),
789 std::make_pair(15, "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO"),
790 std::make_pair(17, "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO"),
791 std::make_pair(18, "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO"),
792 std::make_pair(19, "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO"),
793 std::make_pair(20, "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO"),
794 std::make_pair(21, "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO"),
795 std::make_pair(22, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO"),
796 std::make_pair(23, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO"),
797 std::make_pair(24, "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO"),
798 std::make_pair(25, "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO"),
799 std::make_pair(26, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO"),
800 std::make_pair(27, "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO"),
801 std::make_pair(28, "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO"),
802 std::make_pair(29, "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO"),
803 std::make_pair(30, "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO"),
804 std::make_pair(31, "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO"),
805 std::make_pair(32, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO"),
806 std::make_pair(33, "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO"),
807 std::make_pair(34, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO"),
808 std::make_pair(35, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET"),
809 std::make_pair(36, "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET"),
810 std::make_pair(37, "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO"),
811 std::make_pair(38, "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO"),
812 std::make_pair(39, "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO"),
813 std::make_pair(40, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO"),
814 std::make_pair(41, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO"),
815 std::make_pair(42, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO"),
816 std::make_pair(43, "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO"),
817 std::make_pair(44, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER"),
818 std::make_pair(45, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER"),
819 std::make_pair(46, "VK_STRUCTURE_TYPE_MEMORY_BARRIER"),
820 std::make_pair(47, "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO"),
821 std::make_pair(48, "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO"),
822 std::make_pair(1000094000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES"),
823 std::make_pair(1000157000, "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO"),
824 std::make_pair(1000157001, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO"),
825 std::make_pair(1000083000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES"),
826 std::make_pair(1000127000, "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS"),
827 std::make_pair(1000127001, "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO"),
828 std::make_pair(1000060000, "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO"),
829 std::make_pair(1000060003, "VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO"),
830 std::make_pair(1000060004, "VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO"),
831 std::make_pair(1000060005, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO"),
832 std::make_pair(1000060013, "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO"),
833 std::make_pair(1000060014, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO"),
834 std::make_pair(1000070000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES"),
835 std::make_pair(1000070001, "VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO"),
836 std::make_pair(1000146000, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2"),
837 std::make_pair(1000146001, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2"),
838 std::make_pair(1000146003, "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2"),
839 std::make_pair(1000059000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2"),
840 std::make_pair(1000059001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2"),
841 std::make_pair(1000059002, "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2"),
842 std::make_pair(1000059003, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2"),
843 std::make_pair(1000059004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2"),
844 std::make_pair(1000059005, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2"),
845 std::make_pair(1000059006, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2"),
846 std::make_pair(1000117000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES"),
847 std::make_pair(1000117001, "VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO"),
848 std::make_pair(1000117002, "VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO"),
849 std::make_pair(1000117003, "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO"),
850 std::make_pair(1000053000, "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO"),
851 std::make_pair(1000053001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES"),
852 std::make_pair(1000053002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES"),
853 std::make_pair(1000120000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES"),
854 std::make_pair(1000145000, "VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO"),
855 std::make_pair(1000145001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES"),
856 std::make_pair(1000145002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES"),
857 std::make_pair(1000145003, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2"),
858 std::make_pair(1000156000, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO"),
859 std::make_pair(1000156001, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO"),
860 std::make_pair(1000156002, "VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO"),
861 std::make_pair(1000156003, "VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO"),
862 std::make_pair(1000156004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES"),
863 std::make_pair(1000156005, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES"),
864 std::make_pair(1000071000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO"),
865 std::make_pair(1000071001, "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES"),
866 std::make_pair(1000071002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO"),
867 std::make_pair(1000071003, "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES"),
868 std::make_pair(1000071004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES"),
869 std::make_pair(1000072000, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO"),
870 std::make_pair(1000072001, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO"),
871 std::make_pair(1000072002, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO"),
872 std::make_pair(1000112000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO"),
873 std::make_pair(1000112001, "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES"),
874 std::make_pair(1000113000, "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO"),
875 std::make_pair(1000077000, "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO"),
876 std::make_pair(1000076000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO"),
877 std::make_pair(1000076001, "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES"),
878 std::make_pair(1000168000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES"),
879 std::make_pair(1000168001, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT"),
880 std::make_pair(1000063000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES"),
881 std::make_pair(49, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES"),
882 std::make_pair(50, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES"),
883 std::make_pair(51, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES"),
884 std::make_pair(52, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES"),
885 std::make_pair(1000147000, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO"),
886 std::make_pair(1000109000, "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2"),
887 std::make_pair(1000109001, "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2"),
888 std::make_pair(1000109002, "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2"),
889 std::make_pair(1000109003, "VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2"),
890 std::make_pair(1000109004, "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2"),
891 std::make_pair(1000109005, "VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO"),
892 std::make_pair(1000109006, "VK_STRUCTURE_TYPE_SUBPASS_END_INFO"),
893 std::make_pair(1000177000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES"),
894 std::make_pair(1000196000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES"),
895 std::make_pair(1000180000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES"),
896 std::make_pair(1000082000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES"),
897 std::make_pair(1000197000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES"),
898 std::make_pair(1000161000, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO"),
899 std::make_pair(1000161001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES"),
900 std::make_pair(1000161002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES"),
901 std::make_pair(1000161003, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO"),
902 std::make_pair(1000161004, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT"),
903 std::make_pair(1000199000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES"),
904 std::make_pair(1000199001, "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE"),
905 std::make_pair(1000221000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES"),
906 std::make_pair(1000246000, "VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO"),
907 std::make_pair(1000130000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES"),
908 std::make_pair(1000130001, "VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO"),
909 std::make_pair(1000211000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES"),
910 std::make_pair(1000108000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES"),
911 std::make_pair(1000108001, "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO"),
912 std::make_pair(1000108002, "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO"),
913 std::make_pair(1000108003, "VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO"),
914 std::make_pair(1000253000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES"),
915 std::make_pair(1000175000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES"),
916 std::make_pair(1000241000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES"),
917 std::make_pair(1000241001, "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT"),
918 std::make_pair(1000241002, "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT"),
919 std::make_pair(1000261000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES"),
920 std::make_pair(1000207000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES"),
921 std::make_pair(1000207001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES"),
922 std::make_pair(1000207002, "VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO"),
923 std::make_pair(1000207003, "VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO"),
924 std::make_pair(1000207004, "VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO"),
925 std::make_pair(1000207005, "VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO"),
926 std::make_pair(1000257000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES"),
927 std::make_pair(1000244001, "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO"),
928 std::make_pair(1000257002, "VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO"),
929 std::make_pair(1000257003, "VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO"),
930 std::make_pair(1000257004, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO"),
931 std::make_pair(1000298000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES"),
932 std::make_pair(1000298001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES"),
933 std::make_pair(1000298002, "VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO"),
934 std::make_pair(1000298003, "VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO"),
935 std::make_pair(1000298004, "VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_CONSUMPTION"),
936 std::make_pair(1000298005, "VK_STRUCTURE_TYPE_PIPELINE_POOL_SIZE"),
937 std::make_pair(1000298007, "VK_STRUCTURE_TYPE_FAULT_DATA"),
938 std::make_pair(1000298008, "VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO"),
939 std::make_pair(1000298010, "VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO"),
940 std::make_pair(1000001000, "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR"),
941 std::make_pair(1000001001, "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR"),
942 std::make_pair(1000060007, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR"),
943 std::make_pair(1000060008, "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"),
944 std::make_pair(1000060009, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"),
945 std::make_pair(1000060010, "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR"),
946 std::make_pair(1000060011, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"),
947 std::make_pair(1000060012, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"),
948 std::make_pair(1000002000, "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR"),
949 std::make_pair(1000002001, "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR"),
950 std::make_pair(1000003000, "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR"),
951 std::make_pair(1000004000, "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR"),
952 std::make_pair(1000005000, "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR"),
953 std::make_pair(1000006000, "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR"),
954 std::make_pair(1000008000, "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR"),
955 std::make_pair(1000009000, "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR"),
956 std::make_pair(1000010000, "VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID"),
957 std::make_pair(1000010001, "VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID"),
958 std::make_pair(1000010002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID"),
959 std::make_pair(1000011000, "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT"),
960 std::make_pair(1000018000, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD"),
961 std::make_pair(1000022000, "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT"),
962 std::make_pair(1000022001, "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT"),
963 std::make_pair(1000022002, "VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT"),
964 std::make_pair(1000023000, "VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR"),
965 std::make_pair(1000023001, "VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR"),
966 std::make_pair(1000023002, "VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR"),
967 std::make_pair(1000023003, "VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR"),
968 std::make_pair(1000023004, "VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR"),
969 std::make_pair(1000023005, "VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR"),
970 std::make_pair(1000023006, "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR"),
971 std::make_pair(1000023007, "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR"),
972 std::make_pair(1000023008, "VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR"),
973 std::make_pair(1000023009, "VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR"),
974 std::make_pair(1000023010, "VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR"),
975 std::make_pair(1000023011, "VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR"),
976 std::make_pair(1000023012, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR"),
977 std::make_pair(1000023013, "VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR"),
978 std::make_pair(1000023014, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR"),
979 std::make_pair(1000023015, "VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR"),
980 std::make_pair(1000024000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR"),
981 std::make_pair(1000026000, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV"),
982 std::make_pair(1000026001, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV"),
983 std::make_pair(1000026002, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV"),
984 std::make_pair(1000028000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT"),
985 std::make_pair(1000028001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT"),
986 std::make_pair(1000028002, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT"),
987 std::make_pair(1000029000, "VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"),
988 std::make_pair(1000029001, "VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"),
989 std::make_pair(1000029002, "VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX"),
990 std::make_pair(1000030000, "VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX"),
991 std::make_pair(1000030001, "VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX"),
992 std::make_pair(1000038000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT"),
993 std::make_pair(1000038001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT"),
994 std::make_pair(1000038002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"),
995 std::make_pair(1000038003, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT"),
996 std::make_pair(1000038004, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT"),
997 std::make_pair(1000038005, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT"),
998 std::make_pair(1000038006, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT"),
999 std::make_pair(1000038007, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT"),
1000 std::make_pair(1000038008, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT"),
1001 std::make_pair(1000038009, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT"),
1002 std::make_pair(1000038010, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT"),
1003 std::make_pair(1000039000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT"),
1004 std::make_pair(1000039001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT"),
1005 std::make_pair(1000039002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1006 std::make_pair(1000039003, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"),
1007 std::make_pair(1000039004, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT"),
1008 std::make_pair(1000039005, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT"),
1009 std::make_pair(1000039006, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_EXT"),
1010 std::make_pair(1000039007, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT"),
1011 std::make_pair(1000039008, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT"),
1012 std::make_pair(1000039009, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT"),
1013 std::make_pair(1000039010, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT"),
1014 std::make_pair(1000039011, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT"),
1015 std::make_pair(1000040000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR"),
1016 std::make_pair(1000040001, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT"),
1017 std::make_pair(1000040002, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR"),
1018 std::make_pair(1000040003, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT"),
1019 std::make_pair(1000040004, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT"),
1020 std::make_pair(1000040005, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1021 std::make_pair(1000040006, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR"),
1022 std::make_pair(1000040007, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR"),
1023 std::make_pair(1000041000, "VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD"),
1024 std::make_pair(1000044000, "VK_STRUCTURE_TYPE_RENDERING_INFO_KHR"),
1025 std::make_pair(1000044001, "VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR"),
1026 std::make_pair(1000044002, "VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR"),
1027 std::make_pair(1000044003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR"),
1028 std::make_pair(1000044004, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR"),
1029 std::make_pair(1000044006, "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR"),
1030 std::make_pair(1000044007, "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT"),
1031 std::make_pair(1000044008, "VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD"),
1032 std::make_pair(1000044009, "VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX"),
1033 std::make_pair(1000049000, "VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP"),
1034 std::make_pair(1000050000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV"),
1035 std::make_pair(1000056000, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV"),
1036 std::make_pair(1000056001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV"),
1037 std::make_pair(1000057000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV"),
1038 std::make_pair(1000057001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV"),
1039 std::make_pair(1000058000, "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV"),
1040 std::make_pair(1000060007, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR"),
1041 std::make_pair(1000060008, "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"),
1042 std::make_pair(1000060009, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"),
1043 std::make_pair(1000060010, "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR"),
1044 std::make_pair(1000060011, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"),
1045 std::make_pair(1000060012, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"),
1046 std::make_pair(1000061000, "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT"),
1047 std::make_pair(1000062000, "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN"),
1048 std::make_pair(1000066000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT"),
1049 std::make_pair(1000067000, "VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT"),
1050 std::make_pair(1000067001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT"),
1051 std::make_pair(1000073000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR"),
1052 std::make_pair(1000073001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR"),
1053 std::make_pair(1000073002, "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR"),
1054 std::make_pair(1000073003, "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR"),
1055 std::make_pair(1000074000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR"),
1056 std::make_pair(1000074001, "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR"),
1057 std::make_pair(1000074002, "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR"),
1058 std::make_pair(1000075000, "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR"),
1059 std::make_pair(1000078000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"),
1060 std::make_pair(1000078001, "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"),
1061 std::make_pair(1000078002, "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR"),
1062 std::make_pair(1000078003, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR"),
1063 std::make_pair(1000079000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR"),
1064 std::make_pair(1000079001, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR"),
1065 std::make_pair(1000080000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR"),
1066 std::make_pair(1000081000, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT"),
1067 std::make_pair(1000081001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT"),
1068 std::make_pair(1000081002, "VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT"),
1069 std::make_pair(1000084000, "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR"),
1070 std::make_pair(1000087000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV"),
1071 std::make_pair(1000090000, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT"),
1072 std::make_pair(1000091000, "VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT"),
1073 std::make_pair(1000091001, "VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT"),
1074 std::make_pair(1000091002, "VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT"),
1075 std::make_pair(1000091003, "VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT"),
1076 std::make_pair(1000092000, "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE"),
1077 std::make_pair(1000097000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX"),
1078 std::make_pair(1000098000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV"),
1079 std::make_pair(1000099000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT"),
1080 std::make_pair(1000099001, "VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT"),
1081 std::make_pair(1000101000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT"),
1082 std::make_pair(1000101001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT"),
1083 std::make_pair(1000102000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT"),
1084 std::make_pair(1000102001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT"),
1085 std::make_pair(1000105000, "VK_STRUCTURE_TYPE_HDR_METADATA_EXT"),
1086 std::make_pair(1000111000, "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR"),
1087 std::make_pair(1000114000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR"),
1088 std::make_pair(1000114001, "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR"),
1089 std::make_pair(1000114002, "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR"),
1090 std::make_pair(1000115000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR"),
1091 std::make_pair(1000115001, "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR"),
1092 std::make_pair(1000116000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR"),
1093 std::make_pair(1000116001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR"),
1094 std::make_pair(1000116002, "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR"),
1095 std::make_pair(1000116003, "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR"),
1096 std::make_pair(1000116004, "VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR"),
1097 std::make_pair(1000116005, "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR"),
1098 std::make_pair(1000116006, "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR"),
1099 std::make_pair(1000116007, "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR"),
1100 std::make_pair(1000119000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR"),
1101 std::make_pair(1000119001, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR"),
1102 std::make_pair(1000119002, "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR"),
1103 std::make_pair(1000121000, "VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR"),
1104 std::make_pair(1000121001, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR"),
1105 std::make_pair(1000121002, "VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR"),
1106 std::make_pair(1000121003, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR"),
1107 std::make_pair(1000121004, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR"),
1108 std::make_pair(1000122000, "VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK"),
1109 std::make_pair(1000123000, "VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK"),
1110 std::make_pair(1000128000, "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT"),
1111 std::make_pair(1000128001, "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT"),
1112 std::make_pair(1000128002, "VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT"),
1113 std::make_pair(1000128003, "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT"),
1114 std::make_pair(1000128004, "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT"),
1115 std::make_pair(1000129000, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID"),
1116 std::make_pair(1000129001, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID"),
1117 std::make_pair(1000129002, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID"),
1118 std::make_pair(1000129003, "VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"),
1119 std::make_pair(1000129004, "VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"),
1120 std::make_pair(1000129005, "VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID"),
1121 std::make_pair(1000129006, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID"),
1122 std::make_pair(1000138000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT"),
1123 std::make_pair(1000138001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT"),
1124 std::make_pair(1000138002, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT"),
1125 std::make_pair(1000138003, "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT"),
1126 std::make_pair(1000143000, "VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT"),
1127 std::make_pair(1000143001, "VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT"),
1128 std::make_pair(1000143002, "VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT"),
1129 std::make_pair(1000143003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT"),
1130 std::make_pair(1000143004, "VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT"),
1131 std::make_pair(1000148000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT"),
1132 std::make_pair(1000148001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT"),
1133 std::make_pair(1000148002, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT"),
1134 std::make_pair(1000149000, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV"),
1135 std::make_pair(1000150007, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR"),
1136 std::make_pair(1000150000, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR"),
1137 std::make_pair(1000150002, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR"),
1138 std::make_pair(1000150003, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR"),
1139 std::make_pair(1000150004, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR"),
1140 std::make_pair(1000150005, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR"),
1141 std::make_pair(1000150006, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR"),
1142 std::make_pair(1000150009, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR"),
1143 std::make_pair(1000150010, "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR"),
1144 std::make_pair(1000150011, "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR"),
1145 std::make_pair(1000150012, "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR"),
1146 std::make_pair(1000150013, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR"),
1147 std::make_pair(1000150014, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR"),
1148 std::make_pair(1000150017, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR"),
1149 std::make_pair(1000150020, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR"),
1150 std::make_pair(1000347000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR"),
1151 std::make_pair(1000347001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR"),
1152 std::make_pair(1000150015, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR"),
1153 std::make_pair(1000150016, "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR"),
1154 std::make_pair(1000150018, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR"),
1155 std::make_pair(1000348013, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR"),
1156 std::make_pair(1000152000, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV"),
1157 std::make_pair(1000154000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV"),
1158 std::make_pair(1000154001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV"),
1159 std::make_pair(1000158000, "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT"),
1160 std::make_pair(1000158002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT"),
1161 std::make_pair(1000158003, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT"),
1162 std::make_pair(1000158004, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT"),
1163 std::make_pair(1000158005, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT"),
1164 std::make_pair(1000158006, "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT"),
1165 std::make_pair(1000160000, "VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT"),
1166 std::make_pair(1000160001, "VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT"),
1167 std::make_pair(1000163000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR"),
1168 std::make_pair(1000163001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR"),
1169 std::make_pair(1000164000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV"),
1170 std::make_pair(1000164001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV"),
1171 std::make_pair(1000164002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV"),
1172 std::make_pair(1000164005, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV"),
1173 std::make_pair(1000165000, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV"),
1174 std::make_pair(1000165001, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV"),
1175 std::make_pair(1000165003, "VK_STRUCTURE_TYPE_GEOMETRY_NV"),
1176 std::make_pair(1000165004, "VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV"),
1177 std::make_pair(1000165005, "VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV"),
1178 std::make_pair(1000165006, "VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV"),
1179 std::make_pair(1000165007, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV"),
1180 std::make_pair(1000165008, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV"),
1181 std::make_pair(1000165009, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV"),
1182 std::make_pair(1000165011, "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV"),
1183 std::make_pair(1000165012, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV"),
1184 std::make_pair(1000166000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV"),
1185 std::make_pair(1000166001, "VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV"),
1186 std::make_pair(1000170000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT"),
1187 std::make_pair(1000170001, "VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT"),
1188 std::make_pair(1000174000, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT"),
1189 std::make_pair(1000178000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT"),
1190 std::make_pair(1000178001, "VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT"),
1191 std::make_pair(1000178002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT"),
1192 std::make_pair(1000181000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR"),
1193 std::make_pair(1000183000, "VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD"),
1194 std::make_pair(1000184000, "VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT"),
1195 std::make_pair(1000185000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD"),
1196 std::make_pair(1000187000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT"),
1197 std::make_pair(1000187001, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT"),
1198 std::make_pair(1000187002, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1199 std::make_pair(1000187003, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"),
1200 std::make_pair(1000187004, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT"),
1201 std::make_pair(1000187005, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT"),
1202 std::make_pair(1000187006, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT"),
1203 std::make_pair(1000189000, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD"),
1204 std::make_pair(1000190000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT"),
1205 std::make_pair(1000190001, "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT"),
1206 std::make_pair(1000190002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT"),
1207 std::make_pair(1000191000, "VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP"),
1208 std::make_pair(1000192000, "VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT"),
1209 std::make_pair(1000201000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV"),
1210 std::make_pair(1000202000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV"),
1211 std::make_pair(1000202001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV"),
1212 std::make_pair(1000203000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV"),
1213 std::make_pair(1000204000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV"),
1214 std::make_pair(1000205000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV"),
1215 std::make_pair(1000205002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV"),
1216 std::make_pair(1000206000, "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV"),
1217 std::make_pair(1000206001, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV"),
1218 std::make_pair(1000209000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL"),
1219 std::make_pair(1000210000, "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL"),
1220 std::make_pair(1000210001, "VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL"),
1221 std::make_pair(1000210002, "VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL"),
1222 std::make_pair(1000210003, "VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL"),
1223 std::make_pair(1000210004, "VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL"),
1224 std::make_pair(1000210005, "VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL"),
1225 std::make_pair(1000212000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT"),
1226 std::make_pair(1000213000, "VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD"),
1227 std::make_pair(1000213001, "VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD"),
1228 std::make_pair(1000214000, "VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA"),
1229 std::make_pair(1000215000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR"),
1230 std::make_pair(1000217000, "VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT"),
1231 std::make_pair(1000218000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT"),
1232 std::make_pair(1000218001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT"),
1233 std::make_pair(1000218002, "VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT"),
1234 std::make_pair(1000225000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT"),
1235 std::make_pair(1000225001, "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT"),
1236 std::make_pair(1000225002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT"),
1237 std::make_pair(1000226000, "VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR"),
1238 std::make_pair(1000226001, "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR"),
1239 std::make_pair(1000226002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR"),
1240 std::make_pair(1000226003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR"),
1241 std::make_pair(1000226004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR"),
1242 std::make_pair(1000227000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD"),
1243 std::make_pair(1000229000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD"),
1244 std::make_pair(1000234000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT"),
1245 std::make_pair(1000237000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT"),
1246 std::make_pair(1000238000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT"),
1247 std::make_pair(1000238001, "VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT"),
1248 std::make_pair(1000239000, "VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR"),
1249 std::make_pair(1000240000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV"),
1250 std::make_pair(1000244000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT"),
1251 std::make_pair(1000244002, "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT"),
1252 std::make_pair(1000245000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT"),
1253 std::make_pair(1000247000, "VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT"),
1254 std::make_pair(1000248000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR"),
1255 std::make_pair(1000249000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV"),
1256 std::make_pair(1000249001, "VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV"),
1257 std::make_pair(1000249002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV"),
1258 std::make_pair(1000250000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV"),
1259 std::make_pair(1000250001, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV"),
1260 std::make_pair(1000250002, "VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV"),
1261 std::make_pair(1000251000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT"),
1262 std::make_pair(1000252000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT"),
1263 std::make_pair(1000254000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT"),
1264 std::make_pair(1000254001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT"),
1265 std::make_pair(1000254002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT"),
1266 std::make_pair(1000255000, "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT"),
1267 std::make_pair(1000255002, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT"),
1268 std::make_pair(1000255001, "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT"),
1269 std::make_pair(1000256000, "VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT"),
1270 std::make_pair(1000259000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT"),
1271 std::make_pair(1000259001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT"),
1272 std::make_pair(1000259002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT"),
1273 std::make_pair(1000260000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT"),
1274 std::make_pair(1000265000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT"),
1275 std::make_pair(1000267000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT"),
1276 std::make_pair(1000269000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR"),
1277 std::make_pair(1000269001, "VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR"),
1278 std::make_pair(1000269002, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR"),
1279 std::make_pair(1000269003, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR"),
1280 std::make_pair(1000269004, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR"),
1281 std::make_pair(1000269005, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR"),
1282 std::make_pair(1000273000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT"),
1283 std::make_pair(1000276000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT"),
1284 std::make_pair(1000277000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV"),
1285 std::make_pair(1000277001, "VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV"),
1286 std::make_pair(1000277002, "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV"),
1287 std::make_pair(1000277003, "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV"),
1288 std::make_pair(1000277004, "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV"),
1289 std::make_pair(1000277005, "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV"),
1290 std::make_pair(1000277006, "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV"),
1291 std::make_pair(1000277007, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV"),
1292 std::make_pair(1000278000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV"),
1293 std::make_pair(1000278001, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV"),
1294 std::make_pair(1000280000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR"),
1295 std::make_pair(1000280001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR"),
1296 std::make_pair(1000281000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT"),
1297 std::make_pair(1000281001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT"),
1298 std::make_pair(1000282000, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM"),
1299 std::make_pair(1000282001, "VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM"),
1300 std::make_pair(1000284000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT"),
1301 std::make_pair(1000284001, "VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT"),
1302 std::make_pair(1000284002, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT"),
1303 std::make_pair(1000286000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT"),
1304 std::make_pair(1000286001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT"),
1305 std::make_pair(1000287000, "VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT"),
1306 std::make_pair(1000287001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT"),
1307 std::make_pair(1000287002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT"),
1308 std::make_pair(1000290000, "VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR"),
1309 std::make_pair(1000294000, "VK_STRUCTURE_TYPE_PRESENT_ID_KHR"),
1310 std::make_pair(1000294001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR"),
1311 std::make_pair(1000295000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT"),
1312 std::make_pair(1000295001, "VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT"),
1313 std::make_pair(1000295002, "VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT"),
1314 std::make_pair(1000297000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT"),
1315 std::make_pair(1000299000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR"),
1316 std::make_pair(1000299001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR"),
1317 std::make_pair(1000299002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR"),
1318 std::make_pair(1000300000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV"),
1319 std::make_pair(1000300001, "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV"),
1320 std::make_pair(1000308000, "VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR"),
1321 std::make_pair(1000309000, "VK_STRUCTURE_TYPE_RESERVED_QCOM"),
1322 std::make_pair(1000314000, "VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR"),
1323 std::make_pair(1000314001, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR"),
1324 std::make_pair(1000314002, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR"),
1325 std::make_pair(1000314003, "VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR"),
1326 std::make_pair(1000314004, "VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR"),
1327 std::make_pair(1000314005, "VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR"),
1328 std::make_pair(1000314006, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR"),
1329 std::make_pair(1000314007, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR"),
1330 std::make_pair(1000314008, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV"),
1331 std::make_pair(1000314009, "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV"),
1332 std::make_pair(1000323000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR"),
1333 std::make_pair(1000325000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR"),
1334 std::make_pair(1000326000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV"),
1335 std::make_pair(1000326001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV"),
1336 std::make_pair(1000326002, "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV"),
1337 std::make_pair(1000327000, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV"),
1338 std::make_pair(1000327001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV"),
1339 std::make_pair(1000327002, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV"),
1340 std::make_pair(1000330000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT"),
1341 std::make_pair(1000332000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT"),
1342 std::make_pair(1000332001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT"),
1343 std::make_pair(1000333000, "VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM"),
1344 std::make_pair(1000335000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT"),
1345 std::make_pair(1000336000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR"),
1346 std::make_pair(1000337000, "VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR"),
1347 std::make_pair(1000337001, "VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR"),
1348 std::make_pair(1000337002, "VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR"),
1349 std::make_pair(1000337003, "VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR"),
1350 std::make_pair(1000337004, "VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR"),
1351 std::make_pair(1000337005, "VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR"),
1352 std::make_pair(1000337006, "VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR"),
1353 std::make_pair(1000337007, "VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR"),
1354 std::make_pair(1000337008, "VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR"),
1355 std::make_pair(1000337009, "VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR"),
1356 std::make_pair(1000337010, "VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR"),
1357 std::make_pair(1000340000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT"),
1358 std::make_pair(1000342000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM"),
1359 std::make_pair(1000344000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT"),
1360 std::make_pair(1000346000, "VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT"),
1361 std::make_pair(1000351000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE"),
1362 std::make_pair(1000351002, "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE"),
1363 std::make_pair(1000352000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT"),
1364 std::make_pair(1000352001, "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT"),
1365 std::make_pair(1000352002, "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT"),
1366 std::make_pair(1000353000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT"),
1367 std::make_pair(1000355000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT"),
1368 std::make_pair(1000355001, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT"),
1369 std::make_pair(1000356000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT"),
1370 std::make_pair(1000360000, "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR"),
1371 std::make_pair(1000364000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA"),
1372 std::make_pair(1000364001, "VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA"),
1373 std::make_pair(1000364002, "VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA"),
1374 std::make_pair(1000365000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA"),
1375 std::make_pair(1000365001, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA"),
1376 std::make_pair(1000366000, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA"),
1377 std::make_pair(1000366001, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA"),
1378 std::make_pair(1000366002, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA"),
1379 std::make_pair(1000366003, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA"),
1380 std::make_pair(1000366004, "VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA"),
1381 std::make_pair(1000366005, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA"),
1382 std::make_pair(1000366006, "VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA"),
1383 std::make_pair(1000366007, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA"),
1384 std::make_pair(1000366008, "VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA"),
1385 std::make_pair(1000366009, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA"),
1386 std::make_pair(1000369000, "VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI"),
1387 std::make_pair(1000369001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI"),
1388 std::make_pair(1000369002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI"),
1389 std::make_pair(1000370000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI"),
1390 std::make_pair(1000371000, "VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV"),
1391 std::make_pair(1000371001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV"),
1392 std::make_pair(1000377000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT"),
1393 std::make_pair(1000378000, "VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX"),
1394 std::make_pair(1000381000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT"),
1395 std::make_pair(1000381001, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT"),
1396 std::make_pair(1000388000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT"),
1397 std::make_pair(1000388001, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT"),
1398 std::make_pair(1000391000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT"),
1399 std::make_pair(1000391001, "VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT"),
1400 std::make_pair(1000392000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT"),
1401 std::make_pair(1000392001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT"),
1402 std::make_pair(1000411000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT"),
1403 std::make_pair(1000411001, "VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT"),
1404 std::make_pair(1000412000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT"),
1405 std::make_pair(1000413000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR"),
1406 std::make_pair(1000413001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR"),
1407 std::make_pair(1000413002, "VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR"),
1408 std::make_pair(1000413003, "VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR"),
1409 std::make_pair(1000435000, "VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT"),
1410 };
print_VkStructureType(VkStructureType obj,const std::string & str,bool commaNeeded=true)1411 static void print_VkStructureType(VkStructureType obj, const std::string& str, bool commaNeeded=true) {
1412 PRINT_SPACE
1413 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1414 if (commaNeeded)
1415 _OUT << "\"" << VkStructureType_map[obj] << "\"," << std::endl;
1416 else
1417 _OUT << "\"" << VkStructureType_map[obj] << "\"" << std::endl;
1418 }
print_VkStructureType(const VkStructureType * obj,const std::string & str,bool commaNeeded=true)1419 static void print_VkStructureType(const VkStructureType * obj, const std::string& str, bool commaNeeded=true) {
1420 PRINT_SPACE
1421 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1422 if (commaNeeded)
1423 _OUT << "\"" << VkStructureType_map[*obj] << "\"," << std::endl;
1424 else
1425 _OUT << "\"" << VkStructureType_map[*obj] << "\"" << std::endl;
1426 }
1427
1428 static std::map<deUint64, std::string> VkAccessFlagBits_map = {
1429 std::make_pair(1ULL << 0, "VK_ACCESS_INDIRECT_COMMAND_READ_BIT"),
1430 std::make_pair(1ULL << 1, "VK_ACCESS_INDEX_READ_BIT"),
1431 std::make_pair(1ULL << 2, "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT"),
1432 std::make_pair(1ULL << 3, "VK_ACCESS_UNIFORM_READ_BIT"),
1433 std::make_pair(1ULL << 4, "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT"),
1434 std::make_pair(1ULL << 5, "VK_ACCESS_SHADER_READ_BIT"),
1435 std::make_pair(1ULL << 6, "VK_ACCESS_SHADER_WRITE_BIT"),
1436 std::make_pair(1ULL << 7, "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT"),
1437 std::make_pair(1ULL << 8, "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT"),
1438 std::make_pair(1ULL << 9, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT"),
1439 std::make_pair(1ULL << 10, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT"),
1440 std::make_pair(1ULL << 11, "VK_ACCESS_TRANSFER_READ_BIT"),
1441 std::make_pair(1ULL << 12, "VK_ACCESS_TRANSFER_WRITE_BIT"),
1442 std::make_pair(1ULL << 13, "VK_ACCESS_HOST_READ_BIT"),
1443 std::make_pair(1ULL << 14, "VK_ACCESS_HOST_WRITE_BIT"),
1444 std::make_pair(1ULL << 15, "VK_ACCESS_MEMORY_READ_BIT"),
1445 std::make_pair(1ULL << 16, "VK_ACCESS_MEMORY_WRITE_BIT"),
1446 std::make_pair(1ULL << 25, "VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT"),
1447 std::make_pair(1ULL << 26, "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT"),
1448 std::make_pair(1ULL << 27, "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT"),
1449 std::make_pair(1ULL << 20, "VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT"),
1450 std::make_pair(1ULL << 19, "VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT"),
1451 std::make_pair(1ULL << 21, "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR"),
1452 std::make_pair(1ULL << 22, "VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR"),
1453 std::make_pair(1ULL << 24, "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT"),
1454 std::make_pair(1ULL << 23, "VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR"),
1455 std::make_pair(1ULL << 17, "VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV"),
1456 std::make_pair(1ULL << 18, "VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV"),
1457 std::make_pair(0, "VK_ACCESS_NONE_KHR"),
1458 };
print_VkAccessFlagBits(VkAccessFlagBits obj,const std::string & str,bool commaNeeded=true)1459 static void print_VkAccessFlagBits(VkAccessFlagBits obj, const std::string& str, bool commaNeeded=true) {
1460 PRINT_SPACE
1461 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1462 if (commaNeeded)
1463 _OUT << "\"" << VkAccessFlagBits_map[obj] << "\"," << std::endl;
1464 else
1465 _OUT << "\"" << VkAccessFlagBits_map[obj] << "\"" << std::endl;
1466 }
print_VkAccessFlagBits(const VkAccessFlagBits * obj,const std::string & str,bool commaNeeded=true)1467 static void print_VkAccessFlagBits(const VkAccessFlagBits * obj, const std::string& str, bool commaNeeded=true) {
1468 PRINT_SPACE
1469 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1470 if (commaNeeded)
1471 _OUT << "\"" << VkAccessFlagBits_map[*obj] << "\"," << std::endl;
1472 else
1473 _OUT << "\"" << VkAccessFlagBits_map[*obj] << "\"" << std::endl;
1474 }
1475
1476 static std::map<deUint64, std::string> VkImageLayout_map = {
1477 std::make_pair(0, "VK_IMAGE_LAYOUT_UNDEFINED"),
1478 std::make_pair(1, "VK_IMAGE_LAYOUT_GENERAL"),
1479 std::make_pair(2, "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL"),
1480 std::make_pair(3, "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL"),
1481 std::make_pair(4, "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL"),
1482 std::make_pair(5, "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL"),
1483 std::make_pair(6, "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL"),
1484 std::make_pair(7, "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL"),
1485 std::make_pair(8, "VK_IMAGE_LAYOUT_PREINITIALIZED"),
1486 std::make_pair(1000117000, "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL"),
1487 std::make_pair(1000117001, "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL"),
1488 std::make_pair(1000241000, "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL"),
1489 std::make_pair(1000241001, "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL"),
1490 std::make_pair(1000241002, "VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL"),
1491 std::make_pair(1000241003, "VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL"),
1492 std::make_pair(1000001002, "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR"),
1493 std::make_pair(1000024000, "VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR"),
1494 std::make_pair(1000024001, "VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR"),
1495 std::make_pair(1000024002, "VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR"),
1496 std::make_pair(1000111000, "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR"),
1497 std::make_pair(1000218000, "VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT"),
1498 std::make_pair(1000164003, "VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR"),
1499 std::make_pair(1000299000, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR"),
1500 std::make_pair(1000299001, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR"),
1501 std::make_pair(1000299002, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR"),
1502 std::make_pair(1000314000, "VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR"),
1503 std::make_pair(1000314001, "VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR"),
1504 };
print_VkImageLayout(VkImageLayout obj,const std::string & str,bool commaNeeded=true)1505 static void print_VkImageLayout(VkImageLayout obj, const std::string& str, bool commaNeeded=true) {
1506 PRINT_SPACE
1507 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1508 if (commaNeeded)
1509 _OUT << "\"" << VkImageLayout_map[obj] << "\"," << std::endl;
1510 else
1511 _OUT << "\"" << VkImageLayout_map[obj] << "\"" << std::endl;
1512 }
print_VkImageLayout(const VkImageLayout * obj,const std::string & str,bool commaNeeded=true)1513 static void print_VkImageLayout(const VkImageLayout * obj, const std::string& str, bool commaNeeded=true) {
1514 PRINT_SPACE
1515 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1516 if (commaNeeded)
1517 _OUT << "\"" << VkImageLayout_map[*obj] << "\"," << std::endl;
1518 else
1519 _OUT << "\"" << VkImageLayout_map[*obj] << "\"" << std::endl;
1520 }
1521
1522 static std::map<deUint64, std::string> VkImageAspectFlagBits_map = {
1523 std::make_pair(1ULL << 0, "VK_IMAGE_ASPECT_COLOR_BIT"),
1524 std::make_pair(1ULL << 1, "VK_IMAGE_ASPECT_DEPTH_BIT"),
1525 std::make_pair(1ULL << 2, "VK_IMAGE_ASPECT_STENCIL_BIT"),
1526 std::make_pair(1ULL << 3, "VK_IMAGE_ASPECT_METADATA_BIT"),
1527 std::make_pair(1ULL << 4, "VK_IMAGE_ASPECT_PLANE_0_BIT"),
1528 std::make_pair(1ULL << 5, "VK_IMAGE_ASPECT_PLANE_1_BIT"),
1529 std::make_pair(1ULL << 6, "VK_IMAGE_ASPECT_PLANE_2_BIT"),
1530 std::make_pair(1ULL << 7, "VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT"),
1531 std::make_pair(1ULL << 8, "VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT"),
1532 std::make_pair(1ULL << 9, "VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT"),
1533 std::make_pair(1ULL << 10, "VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT"),
1534 std::make_pair(0, "VK_IMAGE_ASPECT_NONE_KHR"),
1535 };
print_VkImageAspectFlagBits(VkImageAspectFlagBits obj,const std::string & str,bool commaNeeded=true)1536 static void print_VkImageAspectFlagBits(VkImageAspectFlagBits obj, const std::string& str, bool commaNeeded=true) {
1537 PRINT_SPACE
1538 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1539 if (commaNeeded)
1540 _OUT << "\"" << VkImageAspectFlagBits_map[obj] << "\"," << std::endl;
1541 else
1542 _OUT << "\"" << VkImageAspectFlagBits_map[obj] << "\"" << std::endl;
1543 }
print_VkImageAspectFlagBits(const VkImageAspectFlagBits * obj,const std::string & str,bool commaNeeded=true)1544 static void print_VkImageAspectFlagBits(const VkImageAspectFlagBits * obj, const std::string& str, bool commaNeeded=true) {
1545 PRINT_SPACE
1546 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1547 if (commaNeeded)
1548 _OUT << "\"" << VkImageAspectFlagBits_map[*obj] << "\"," << std::endl;
1549 else
1550 _OUT << "\"" << VkImageAspectFlagBits_map[*obj] << "\"" << std::endl;
1551 }
1552
1553 static std::map<deUint64, std::string> VkObjectType_map = {
1554 std::make_pair(0, "VK_OBJECT_TYPE_UNKNOWN"),
1555 std::make_pair(1, "VK_OBJECT_TYPE_INSTANCE"),
1556 std::make_pair(2, "VK_OBJECT_TYPE_PHYSICAL_DEVICE"),
1557 std::make_pair(3, "VK_OBJECT_TYPE_DEVICE"),
1558 std::make_pair(4, "VK_OBJECT_TYPE_QUEUE"),
1559 std::make_pair(5, "VK_OBJECT_TYPE_SEMAPHORE"),
1560 std::make_pair(6, "VK_OBJECT_TYPE_COMMAND_BUFFER"),
1561 std::make_pair(7, "VK_OBJECT_TYPE_FENCE"),
1562 std::make_pair(8, "VK_OBJECT_TYPE_DEVICE_MEMORY"),
1563 std::make_pair(9, "VK_OBJECT_TYPE_BUFFER"),
1564 std::make_pair(10, "VK_OBJECT_TYPE_IMAGE"),
1565 std::make_pair(11, "VK_OBJECT_TYPE_EVENT"),
1566 std::make_pair(12, "VK_OBJECT_TYPE_QUERY_POOL"),
1567 std::make_pair(13, "VK_OBJECT_TYPE_BUFFER_VIEW"),
1568 std::make_pair(14, "VK_OBJECT_TYPE_IMAGE_VIEW"),
1569 std::make_pair(16, "VK_OBJECT_TYPE_PIPELINE_CACHE"),
1570 std::make_pair(17, "VK_OBJECT_TYPE_PIPELINE_LAYOUT"),
1571 std::make_pair(18, "VK_OBJECT_TYPE_RENDER_PASS"),
1572 std::make_pair(19, "VK_OBJECT_TYPE_PIPELINE"),
1573 std::make_pair(20, "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT"),
1574 std::make_pair(21, "VK_OBJECT_TYPE_SAMPLER"),
1575 std::make_pair(22, "VK_OBJECT_TYPE_DESCRIPTOR_POOL"),
1576 std::make_pair(23, "VK_OBJECT_TYPE_DESCRIPTOR_SET"),
1577 std::make_pair(24, "VK_OBJECT_TYPE_FRAMEBUFFER"),
1578 std::make_pair(25, "VK_OBJECT_TYPE_COMMAND_POOL"),
1579 std::make_pair(1000156000, "VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION"),
1580 std::make_pair(1000000000, "VK_OBJECT_TYPE_SURFACE_KHR"),
1581 std::make_pair(1000001000, "VK_OBJECT_TYPE_SWAPCHAIN_KHR"),
1582 std::make_pair(1000002000, "VK_OBJECT_TYPE_DISPLAY_KHR"),
1583 std::make_pair(1000002001, "VK_OBJECT_TYPE_DISPLAY_MODE_KHR"),
1584 std::make_pair(1000011000, "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT"),
1585 std::make_pair(1000023000, "VK_OBJECT_TYPE_VIDEO_SESSION_KHR"),
1586 std::make_pair(1000023001, "VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR"),
1587 std::make_pair(1000029000, "VK_OBJECT_TYPE_CU_MODULE_NVX"),
1588 std::make_pair(1000029001, "VK_OBJECT_TYPE_CU_FUNCTION_NVX"),
1589 std::make_pair(1000128000, "VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT"),
1590 std::make_pair(1000150000, "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"),
1591 std::make_pair(1000160000, "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT"),
1592 std::make_pair(1000165000, "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV"),
1593 std::make_pair(1000210000, "VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL"),
1594 std::make_pair(1000268000, "VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR"),
1595 std::make_pair(1000277000, "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV"),
1596 std::make_pair(1000295000, "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT"),
1597 std::make_pair(1000366000, "VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA"),
1598 };
print_VkObjectType(VkObjectType obj,const std::string & str,bool commaNeeded=true)1599 static void print_VkObjectType(VkObjectType obj, const std::string& str, bool commaNeeded=true) {
1600 PRINT_SPACE
1601 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1602 if (commaNeeded)
1603 _OUT << "\"" << VkObjectType_map[obj] << "\"," << std::endl;
1604 else
1605 _OUT << "\"" << VkObjectType_map[obj] << "\"" << std::endl;
1606 }
print_VkObjectType(const VkObjectType * obj,const std::string & str,bool commaNeeded=true)1607 static void print_VkObjectType(const VkObjectType * obj, const std::string& str, bool commaNeeded=true) {
1608 PRINT_SPACE
1609 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1610 if (commaNeeded)
1611 _OUT << "\"" << VkObjectType_map[*obj] << "\"," << std::endl;
1612 else
1613 _OUT << "\"" << VkObjectType_map[*obj] << "\"" << std::endl;
1614 }
1615
1616 static std::map<deUint64, std::string> VkPipelineCacheHeaderVersion_map = {
1617 std::make_pair(1, "VK_PIPELINE_CACHE_HEADER_VERSION_ONE"),
1618 std::make_pair(1000298001, "VK_PIPELINE_CACHE_HEADER_VERSION_SAFETY_CRITICAL_ONE"),
1619 };
print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj,const std::string & str,bool commaNeeded=true)1620 static void print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj, const std::string& str, bool commaNeeded=true) {
1621 PRINT_SPACE
1622 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1623 if (commaNeeded)
1624 _OUT << "\"" << VkPipelineCacheHeaderVersion_map[obj] << "\"," << std::endl;
1625 else
1626 _OUT << "\"" << VkPipelineCacheHeaderVersion_map[obj] << "\"" << std::endl;
1627 }
print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion * obj,const std::string & str,bool commaNeeded=true)1628 static void print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion * obj, const std::string& str, bool commaNeeded=true) {
1629 PRINT_SPACE
1630 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1631 if (commaNeeded)
1632 _OUT << "\"" << VkPipelineCacheHeaderVersion_map[*obj] << "\"," << std::endl;
1633 else
1634 _OUT << "\"" << VkPipelineCacheHeaderVersion_map[*obj] << "\"" << std::endl;
1635 }
1636
1637 static std::map<deUint64, std::string> VkVendorId_map = {
1638 std::make_pair(0x10001, "VK_VENDOR_ID_VIV"),
1639 std::make_pair(0x10002, "VK_VENDOR_ID_VSI"),
1640 std::make_pair(0x10003, "VK_VENDOR_ID_KAZAN"),
1641 std::make_pair(0x10004, "VK_VENDOR_ID_CODEPLAY"),
1642 std::make_pair(0x10005, "VK_VENDOR_ID_MESA"),
1643 std::make_pair(0x10006, "VK_VENDOR_ID_POCL"),
1644 };
print_VkVendorId(VkVendorId obj,const std::string & str,bool commaNeeded=true)1645 static void print_VkVendorId(VkVendorId obj, const std::string& str, bool commaNeeded=true) {
1646 PRINT_SPACE
1647 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1648 if (commaNeeded)
1649 _OUT << "\"" << VkVendorId_map[obj] << "\"," << std::endl;
1650 else
1651 _OUT << "\"" << VkVendorId_map[obj] << "\"" << std::endl;
1652 }
print_VkVendorId(const VkVendorId * obj,const std::string & str,bool commaNeeded=true)1653 static void print_VkVendorId(const VkVendorId * obj, const std::string& str, bool commaNeeded=true) {
1654 PRINT_SPACE
1655 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1656 if (commaNeeded)
1657 _OUT << "\"" << VkVendorId_map[*obj] << "\"," << std::endl;
1658 else
1659 _OUT << "\"" << VkVendorId_map[*obj] << "\"" << std::endl;
1660 }
1661
1662 static std::map<deUint64, std::string> VkSystemAllocationScope_map = {
1663 std::make_pair(0, "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND"),
1664 std::make_pair(1, "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT"),
1665 std::make_pair(2, "VK_SYSTEM_ALLOCATION_SCOPE_CACHE"),
1666 std::make_pair(3, "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE"),
1667 std::make_pair(4, "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE"),
1668 };
print_VkSystemAllocationScope(VkSystemAllocationScope obj,const std::string & str,bool commaNeeded=true)1669 static void print_VkSystemAllocationScope(VkSystemAllocationScope obj, const std::string& str, bool commaNeeded=true) {
1670 PRINT_SPACE
1671 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1672 if (commaNeeded)
1673 _OUT << "\"" << VkSystemAllocationScope_map[obj] << "\"," << std::endl;
1674 else
1675 _OUT << "\"" << VkSystemAllocationScope_map[obj] << "\"" << std::endl;
1676 }
print_VkSystemAllocationScope(const VkSystemAllocationScope * obj,const std::string & str,bool commaNeeded=true)1677 static void print_VkSystemAllocationScope(const VkSystemAllocationScope * obj, const std::string& str, bool commaNeeded=true) {
1678 PRINT_SPACE
1679 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1680 if (commaNeeded)
1681 _OUT << "\"" << VkSystemAllocationScope_map[*obj] << "\"," << std::endl;
1682 else
1683 _OUT << "\"" << VkSystemAllocationScope_map[*obj] << "\"" << std::endl;
1684 }
1685
1686 static std::map<deUint64, std::string> VkInternalAllocationType_map = {
1687 std::make_pair(0, "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE"),
1688 };
print_VkInternalAllocationType(VkInternalAllocationType obj,const std::string & str,bool commaNeeded=true)1689 static void print_VkInternalAllocationType(VkInternalAllocationType obj, const std::string& str, bool commaNeeded=true) {
1690 PRINT_SPACE
1691 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1692 if (commaNeeded)
1693 _OUT << "\"" << VkInternalAllocationType_map[obj] << "\"," << std::endl;
1694 else
1695 _OUT << "\"" << VkInternalAllocationType_map[obj] << "\"" << std::endl;
1696 }
print_VkInternalAllocationType(const VkInternalAllocationType * obj,const std::string & str,bool commaNeeded=true)1697 static void print_VkInternalAllocationType(const VkInternalAllocationType * obj, const std::string& str, bool commaNeeded=true) {
1698 PRINT_SPACE
1699 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1700 if (commaNeeded)
1701 _OUT << "\"" << VkInternalAllocationType_map[*obj] << "\"," << std::endl;
1702 else
1703 _OUT << "\"" << VkInternalAllocationType_map[*obj] << "\"" << std::endl;
1704 }
1705
1706 static std::map<deUint64, std::string> VkFormat_map = {
1707 std::make_pair(0, "VK_FORMAT_UNDEFINED"),
1708 std::make_pair(1, "VK_FORMAT_R4G4_UNORM_PACK8"),
1709 std::make_pair(2, "VK_FORMAT_R4G4B4A4_UNORM_PACK16"),
1710 std::make_pair(3, "VK_FORMAT_B4G4R4A4_UNORM_PACK16"),
1711 std::make_pair(4, "VK_FORMAT_R5G6B5_UNORM_PACK16"),
1712 std::make_pair(5, "VK_FORMAT_B5G6R5_UNORM_PACK16"),
1713 std::make_pair(6, "VK_FORMAT_R5G5B5A1_UNORM_PACK16"),
1714 std::make_pair(7, "VK_FORMAT_B5G5R5A1_UNORM_PACK16"),
1715 std::make_pair(8, "VK_FORMAT_A1R5G5B5_UNORM_PACK16"),
1716 std::make_pair(9, "VK_FORMAT_R8_UNORM"),
1717 std::make_pair(10, "VK_FORMAT_R8_SNORM"),
1718 std::make_pair(11, "VK_FORMAT_R8_USCALED"),
1719 std::make_pair(12, "VK_FORMAT_R8_SSCALED"),
1720 std::make_pair(13, "VK_FORMAT_R8_UINT"),
1721 std::make_pair(14, "VK_FORMAT_R8_SINT"),
1722 std::make_pair(15, "VK_FORMAT_R8_SRGB"),
1723 std::make_pair(16, "VK_FORMAT_R8G8_UNORM"),
1724 std::make_pair(17, "VK_FORMAT_R8G8_SNORM"),
1725 std::make_pair(18, "VK_FORMAT_R8G8_USCALED"),
1726 std::make_pair(19, "VK_FORMAT_R8G8_SSCALED"),
1727 std::make_pair(20, "VK_FORMAT_R8G8_UINT"),
1728 std::make_pair(21, "VK_FORMAT_R8G8_SINT"),
1729 std::make_pair(22, "VK_FORMAT_R8G8_SRGB"),
1730 std::make_pair(23, "VK_FORMAT_R8G8B8_UNORM"),
1731 std::make_pair(24, "VK_FORMAT_R8G8B8_SNORM"),
1732 std::make_pair(25, "VK_FORMAT_R8G8B8_USCALED"),
1733 std::make_pair(26, "VK_FORMAT_R8G8B8_SSCALED"),
1734 std::make_pair(27, "VK_FORMAT_R8G8B8_UINT"),
1735 std::make_pair(28, "VK_FORMAT_R8G8B8_SINT"),
1736 std::make_pair(29, "VK_FORMAT_R8G8B8_SRGB"),
1737 std::make_pair(30, "VK_FORMAT_B8G8R8_UNORM"),
1738 std::make_pair(31, "VK_FORMAT_B8G8R8_SNORM"),
1739 std::make_pair(32, "VK_FORMAT_B8G8R8_USCALED"),
1740 std::make_pair(33, "VK_FORMAT_B8G8R8_SSCALED"),
1741 std::make_pair(34, "VK_FORMAT_B8G8R8_UINT"),
1742 std::make_pair(35, "VK_FORMAT_B8G8R8_SINT"),
1743 std::make_pair(36, "VK_FORMAT_B8G8R8_SRGB"),
1744 std::make_pair(37, "VK_FORMAT_R8G8B8A8_UNORM"),
1745 std::make_pair(38, "VK_FORMAT_R8G8B8A8_SNORM"),
1746 std::make_pair(39, "VK_FORMAT_R8G8B8A8_USCALED"),
1747 std::make_pair(40, "VK_FORMAT_R8G8B8A8_SSCALED"),
1748 std::make_pair(41, "VK_FORMAT_R8G8B8A8_UINT"),
1749 std::make_pair(42, "VK_FORMAT_R8G8B8A8_SINT"),
1750 std::make_pair(43, "VK_FORMAT_R8G8B8A8_SRGB"),
1751 std::make_pair(44, "VK_FORMAT_B8G8R8A8_UNORM"),
1752 std::make_pair(45, "VK_FORMAT_B8G8R8A8_SNORM"),
1753 std::make_pair(46, "VK_FORMAT_B8G8R8A8_USCALED"),
1754 std::make_pair(47, "VK_FORMAT_B8G8R8A8_SSCALED"),
1755 std::make_pair(48, "VK_FORMAT_B8G8R8A8_UINT"),
1756 std::make_pair(49, "VK_FORMAT_B8G8R8A8_SINT"),
1757 std::make_pair(50, "VK_FORMAT_B8G8R8A8_SRGB"),
1758 std::make_pair(51, "VK_FORMAT_A8B8G8R8_UNORM_PACK32"),
1759 std::make_pair(52, "VK_FORMAT_A8B8G8R8_SNORM_PACK32"),
1760 std::make_pair(53, "VK_FORMAT_A8B8G8R8_USCALED_PACK32"),
1761 std::make_pair(54, "VK_FORMAT_A8B8G8R8_SSCALED_PACK32"),
1762 std::make_pair(55, "VK_FORMAT_A8B8G8R8_UINT_PACK32"),
1763 std::make_pair(56, "VK_FORMAT_A8B8G8R8_SINT_PACK32"),
1764 std::make_pair(57, "VK_FORMAT_A8B8G8R8_SRGB_PACK32"),
1765 std::make_pair(58, "VK_FORMAT_A2R10G10B10_UNORM_PACK32"),
1766 std::make_pair(59, "VK_FORMAT_A2R10G10B10_SNORM_PACK32"),
1767 std::make_pair(60, "VK_FORMAT_A2R10G10B10_USCALED_PACK32"),
1768 std::make_pair(61, "VK_FORMAT_A2R10G10B10_SSCALED_PACK32"),
1769 std::make_pair(62, "VK_FORMAT_A2R10G10B10_UINT_PACK32"),
1770 std::make_pair(63, "VK_FORMAT_A2R10G10B10_SINT_PACK32"),
1771 std::make_pair(64, "VK_FORMAT_A2B10G10R10_UNORM_PACK32"),
1772 std::make_pair(65, "VK_FORMAT_A2B10G10R10_SNORM_PACK32"),
1773 std::make_pair(66, "VK_FORMAT_A2B10G10R10_USCALED_PACK32"),
1774 std::make_pair(67, "VK_FORMAT_A2B10G10R10_SSCALED_PACK32"),
1775 std::make_pair(68, "VK_FORMAT_A2B10G10R10_UINT_PACK32"),
1776 std::make_pair(69, "VK_FORMAT_A2B10G10R10_SINT_PACK32"),
1777 std::make_pair(70, "VK_FORMAT_R16_UNORM"),
1778 std::make_pair(71, "VK_FORMAT_R16_SNORM"),
1779 std::make_pair(72, "VK_FORMAT_R16_USCALED"),
1780 std::make_pair(73, "VK_FORMAT_R16_SSCALED"),
1781 std::make_pair(74, "VK_FORMAT_R16_UINT"),
1782 std::make_pair(75, "VK_FORMAT_R16_SINT"),
1783 std::make_pair(76, "VK_FORMAT_R16_SFLOAT"),
1784 std::make_pair(77, "VK_FORMAT_R16G16_UNORM"),
1785 std::make_pair(78, "VK_FORMAT_R16G16_SNORM"),
1786 std::make_pair(79, "VK_FORMAT_R16G16_USCALED"),
1787 std::make_pair(80, "VK_FORMAT_R16G16_SSCALED"),
1788 std::make_pair(81, "VK_FORMAT_R16G16_UINT"),
1789 std::make_pair(82, "VK_FORMAT_R16G16_SINT"),
1790 std::make_pair(83, "VK_FORMAT_R16G16_SFLOAT"),
1791 std::make_pair(84, "VK_FORMAT_R16G16B16_UNORM"),
1792 std::make_pair(85, "VK_FORMAT_R16G16B16_SNORM"),
1793 std::make_pair(86, "VK_FORMAT_R16G16B16_USCALED"),
1794 std::make_pair(87, "VK_FORMAT_R16G16B16_SSCALED"),
1795 std::make_pair(88, "VK_FORMAT_R16G16B16_UINT"),
1796 std::make_pair(89, "VK_FORMAT_R16G16B16_SINT"),
1797 std::make_pair(90, "VK_FORMAT_R16G16B16_SFLOAT"),
1798 std::make_pair(91, "VK_FORMAT_R16G16B16A16_UNORM"),
1799 std::make_pair(92, "VK_FORMAT_R16G16B16A16_SNORM"),
1800 std::make_pair(93, "VK_FORMAT_R16G16B16A16_USCALED"),
1801 std::make_pair(94, "VK_FORMAT_R16G16B16A16_SSCALED"),
1802 std::make_pair(95, "VK_FORMAT_R16G16B16A16_UINT"),
1803 std::make_pair(96, "VK_FORMAT_R16G16B16A16_SINT"),
1804 std::make_pair(97, "VK_FORMAT_R16G16B16A16_SFLOAT"),
1805 std::make_pair(98, "VK_FORMAT_R32_UINT"),
1806 std::make_pair(99, "VK_FORMAT_R32_SINT"),
1807 std::make_pair(100, "VK_FORMAT_R32_SFLOAT"),
1808 std::make_pair(101, "VK_FORMAT_R32G32_UINT"),
1809 std::make_pair(102, "VK_FORMAT_R32G32_SINT"),
1810 std::make_pair(103, "VK_FORMAT_R32G32_SFLOAT"),
1811 std::make_pair(104, "VK_FORMAT_R32G32B32_UINT"),
1812 std::make_pair(105, "VK_FORMAT_R32G32B32_SINT"),
1813 std::make_pair(106, "VK_FORMAT_R32G32B32_SFLOAT"),
1814 std::make_pair(107, "VK_FORMAT_R32G32B32A32_UINT"),
1815 std::make_pair(108, "VK_FORMAT_R32G32B32A32_SINT"),
1816 std::make_pair(109, "VK_FORMAT_R32G32B32A32_SFLOAT"),
1817 std::make_pair(110, "VK_FORMAT_R64_UINT"),
1818 std::make_pair(111, "VK_FORMAT_R64_SINT"),
1819 std::make_pair(112, "VK_FORMAT_R64_SFLOAT"),
1820 std::make_pair(113, "VK_FORMAT_R64G64_UINT"),
1821 std::make_pair(114, "VK_FORMAT_R64G64_SINT"),
1822 std::make_pair(115, "VK_FORMAT_R64G64_SFLOAT"),
1823 std::make_pair(116, "VK_FORMAT_R64G64B64_UINT"),
1824 std::make_pair(117, "VK_FORMAT_R64G64B64_SINT"),
1825 std::make_pair(118, "VK_FORMAT_R64G64B64_SFLOAT"),
1826 std::make_pair(119, "VK_FORMAT_R64G64B64A64_UINT"),
1827 std::make_pair(120, "VK_FORMAT_R64G64B64A64_SINT"),
1828 std::make_pair(121, "VK_FORMAT_R64G64B64A64_SFLOAT"),
1829 std::make_pair(122, "VK_FORMAT_B10G11R11_UFLOAT_PACK32"),
1830 std::make_pair(123, "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32"),
1831 std::make_pair(124, "VK_FORMAT_D16_UNORM"),
1832 std::make_pair(125, "VK_FORMAT_X8_D24_UNORM_PACK32"),
1833 std::make_pair(126, "VK_FORMAT_D32_SFLOAT"),
1834 std::make_pair(127, "VK_FORMAT_S8_UINT"),
1835 std::make_pair(128, "VK_FORMAT_D16_UNORM_S8_UINT"),
1836 std::make_pair(129, "VK_FORMAT_D24_UNORM_S8_UINT"),
1837 std::make_pair(130, "VK_FORMAT_D32_SFLOAT_S8_UINT"),
1838 std::make_pair(131, "VK_FORMAT_BC1_RGB_UNORM_BLOCK"),
1839 std::make_pair(132, "VK_FORMAT_BC1_RGB_SRGB_BLOCK"),
1840 std::make_pair(133, "VK_FORMAT_BC1_RGBA_UNORM_BLOCK"),
1841 std::make_pair(134, "VK_FORMAT_BC1_RGBA_SRGB_BLOCK"),
1842 std::make_pair(135, "VK_FORMAT_BC2_UNORM_BLOCK"),
1843 std::make_pair(136, "VK_FORMAT_BC2_SRGB_BLOCK"),
1844 std::make_pair(137, "VK_FORMAT_BC3_UNORM_BLOCK"),
1845 std::make_pair(138, "VK_FORMAT_BC3_SRGB_BLOCK"),
1846 std::make_pair(139, "VK_FORMAT_BC4_UNORM_BLOCK"),
1847 std::make_pair(140, "VK_FORMAT_BC4_SNORM_BLOCK"),
1848 std::make_pair(141, "VK_FORMAT_BC5_UNORM_BLOCK"),
1849 std::make_pair(142, "VK_FORMAT_BC5_SNORM_BLOCK"),
1850 std::make_pair(143, "VK_FORMAT_BC6H_UFLOAT_BLOCK"),
1851 std::make_pair(144, "VK_FORMAT_BC6H_SFLOAT_BLOCK"),
1852 std::make_pair(145, "VK_FORMAT_BC7_UNORM_BLOCK"),
1853 std::make_pair(146, "VK_FORMAT_BC7_SRGB_BLOCK"),
1854 std::make_pair(147, "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK"),
1855 std::make_pair(148, "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK"),
1856 std::make_pair(149, "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK"),
1857 std::make_pair(150, "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK"),
1858 std::make_pair(151, "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK"),
1859 std::make_pair(152, "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK"),
1860 std::make_pair(153, "VK_FORMAT_EAC_R11_UNORM_BLOCK"),
1861 std::make_pair(154, "VK_FORMAT_EAC_R11_SNORM_BLOCK"),
1862 std::make_pair(155, "VK_FORMAT_EAC_R11G11_UNORM_BLOCK"),
1863 std::make_pair(156, "VK_FORMAT_EAC_R11G11_SNORM_BLOCK"),
1864 std::make_pair(157, "VK_FORMAT_ASTC_4x4_UNORM_BLOCK"),
1865 std::make_pair(158, "VK_FORMAT_ASTC_4x4_SRGB_BLOCK"),
1866 std::make_pair(159, "VK_FORMAT_ASTC_5x4_UNORM_BLOCK"),
1867 std::make_pair(160, "VK_FORMAT_ASTC_5x4_SRGB_BLOCK"),
1868 std::make_pair(161, "VK_FORMAT_ASTC_5x5_UNORM_BLOCK"),
1869 std::make_pair(162, "VK_FORMAT_ASTC_5x5_SRGB_BLOCK"),
1870 std::make_pair(163, "VK_FORMAT_ASTC_6x5_UNORM_BLOCK"),
1871 std::make_pair(164, "VK_FORMAT_ASTC_6x5_SRGB_BLOCK"),
1872 std::make_pair(165, "VK_FORMAT_ASTC_6x6_UNORM_BLOCK"),
1873 std::make_pair(166, "VK_FORMAT_ASTC_6x6_SRGB_BLOCK"),
1874 std::make_pair(167, "VK_FORMAT_ASTC_8x5_UNORM_BLOCK"),
1875 std::make_pair(168, "VK_FORMAT_ASTC_8x5_SRGB_BLOCK"),
1876 std::make_pair(169, "VK_FORMAT_ASTC_8x6_UNORM_BLOCK"),
1877 std::make_pair(170, "VK_FORMAT_ASTC_8x6_SRGB_BLOCK"),
1878 std::make_pair(171, "VK_FORMAT_ASTC_8x8_UNORM_BLOCK"),
1879 std::make_pair(172, "VK_FORMAT_ASTC_8x8_SRGB_BLOCK"),
1880 std::make_pair(173, "VK_FORMAT_ASTC_10x5_UNORM_BLOCK"),
1881 std::make_pair(174, "VK_FORMAT_ASTC_10x5_SRGB_BLOCK"),
1882 std::make_pair(175, "VK_FORMAT_ASTC_10x6_UNORM_BLOCK"),
1883 std::make_pair(176, "VK_FORMAT_ASTC_10x6_SRGB_BLOCK"),
1884 std::make_pair(177, "VK_FORMAT_ASTC_10x8_UNORM_BLOCK"),
1885 std::make_pair(178, "VK_FORMAT_ASTC_10x8_SRGB_BLOCK"),
1886 std::make_pair(179, "VK_FORMAT_ASTC_10x10_UNORM_BLOCK"),
1887 std::make_pair(180, "VK_FORMAT_ASTC_10x10_SRGB_BLOCK"),
1888 std::make_pair(181, "VK_FORMAT_ASTC_12x10_UNORM_BLOCK"),
1889 std::make_pair(182, "VK_FORMAT_ASTC_12x10_SRGB_BLOCK"),
1890 std::make_pair(183, "VK_FORMAT_ASTC_12x12_UNORM_BLOCK"),
1891 std::make_pair(184, "VK_FORMAT_ASTC_12x12_SRGB_BLOCK"),
1892 std::make_pair(1000156000, "VK_FORMAT_G8B8G8R8_422_UNORM"),
1893 std::make_pair(1000156001, "VK_FORMAT_B8G8R8G8_422_UNORM"),
1894 std::make_pair(1000156002, "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM"),
1895 std::make_pair(1000156003, "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM"),
1896 std::make_pair(1000156004, "VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM"),
1897 std::make_pair(1000156005, "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM"),
1898 std::make_pair(1000156006, "VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM"),
1899 std::make_pair(1000156007, "VK_FORMAT_R10X6_UNORM_PACK16"),
1900 std::make_pair(1000156008, "VK_FORMAT_R10X6G10X6_UNORM_2PACK16"),
1901 std::make_pair(1000156009, "VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16"),
1902 std::make_pair(1000156010, "VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16"),
1903 std::make_pair(1000156011, "VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16"),
1904 std::make_pair(1000156012, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16"),
1905 std::make_pair(1000156013, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16"),
1906 std::make_pair(1000156014, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16"),
1907 std::make_pair(1000156015, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16"),
1908 std::make_pair(1000156016, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16"),
1909 std::make_pair(1000156017, "VK_FORMAT_R12X4_UNORM_PACK16"),
1910 std::make_pair(1000156018, "VK_FORMAT_R12X4G12X4_UNORM_2PACK16"),
1911 std::make_pair(1000156019, "VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16"),
1912 std::make_pair(1000156020, "VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16"),
1913 std::make_pair(1000156021, "VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16"),
1914 std::make_pair(1000156022, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16"),
1915 std::make_pair(1000156023, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16"),
1916 std::make_pair(1000156024, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16"),
1917 std::make_pair(1000156025, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16"),
1918 std::make_pair(1000156026, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16"),
1919 std::make_pair(1000156027, "VK_FORMAT_G16B16G16R16_422_UNORM"),
1920 std::make_pair(1000156028, "VK_FORMAT_B16G16R16G16_422_UNORM"),
1921 std::make_pair(1000156029, "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM"),
1922 std::make_pair(1000156030, "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM"),
1923 std::make_pair(1000156031, "VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM"),
1924 std::make_pair(1000156032, "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM"),
1925 std::make_pair(1000156033, "VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM"),
1926 std::make_pair(1000054000, "VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG"),
1927 std::make_pair(1000054001, "VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG"),
1928 std::make_pair(1000054002, "VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG"),
1929 std::make_pair(1000054003, "VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG"),
1930 std::make_pair(1000054004, "VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG"),
1931 std::make_pair(1000054005, "VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG"),
1932 std::make_pair(1000054006, "VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG"),
1933 std::make_pair(1000054007, "VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG"),
1934 std::make_pair(1000066000, "VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT"),
1935 std::make_pair(1000066001, "VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT"),
1936 std::make_pair(1000066002, "VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT"),
1937 std::make_pair(1000066003, "VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT"),
1938 std::make_pair(1000066004, "VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT"),
1939 std::make_pair(1000066005, "VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT"),
1940 std::make_pair(1000066006, "VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT"),
1941 std::make_pair(1000066007, "VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT"),
1942 std::make_pair(1000066008, "VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT"),
1943 std::make_pair(1000066009, "VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT"),
1944 std::make_pair(1000066010, "VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT"),
1945 std::make_pair(1000066011, "VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT"),
1946 std::make_pair(1000066012, "VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT"),
1947 std::make_pair(1000066013, "VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT"),
1948 std::make_pair(1000288000, "VK_FORMAT_ASTC_3x3x3_UNORM_BLOCK_EXT"),
1949 std::make_pair(1000288001, "VK_FORMAT_ASTC_3x3x3_SRGB_BLOCK_EXT"),
1950 std::make_pair(1000288002, "VK_FORMAT_ASTC_3x3x3_SFLOAT_BLOCK_EXT"),
1951 std::make_pair(1000288003, "VK_FORMAT_ASTC_4x3x3_UNORM_BLOCK_EXT"),
1952 std::make_pair(1000288004, "VK_FORMAT_ASTC_4x3x3_SRGB_BLOCK_EXT"),
1953 std::make_pair(1000288005, "VK_FORMAT_ASTC_4x3x3_SFLOAT_BLOCK_EXT"),
1954 std::make_pair(1000288006, "VK_FORMAT_ASTC_4x4x3_UNORM_BLOCK_EXT"),
1955 std::make_pair(1000288007, "VK_FORMAT_ASTC_4x4x3_SRGB_BLOCK_EXT"),
1956 std::make_pair(1000288008, "VK_FORMAT_ASTC_4x4x3_SFLOAT_BLOCK_EXT"),
1957 std::make_pair(1000288009, "VK_FORMAT_ASTC_4x4x4_UNORM_BLOCK_EXT"),
1958 std::make_pair(1000288010, "VK_FORMAT_ASTC_4x4x4_SRGB_BLOCK_EXT"),
1959 std::make_pair(1000288011, "VK_FORMAT_ASTC_4x4x4_SFLOAT_BLOCK_EXT"),
1960 std::make_pair(1000288012, "VK_FORMAT_ASTC_5x4x4_UNORM_BLOCK_EXT"),
1961 std::make_pair(1000288013, "VK_FORMAT_ASTC_5x4x4_SRGB_BLOCK_EXT"),
1962 std::make_pair(1000288014, "VK_FORMAT_ASTC_5x4x4_SFLOAT_BLOCK_EXT"),
1963 std::make_pair(1000288015, "VK_FORMAT_ASTC_5x5x4_UNORM_BLOCK_EXT"),
1964 std::make_pair(1000288016, "VK_FORMAT_ASTC_5x5x4_SRGB_BLOCK_EXT"),
1965 std::make_pair(1000288017, "VK_FORMAT_ASTC_5x5x4_SFLOAT_BLOCK_EXT"),
1966 std::make_pair(1000288018, "VK_FORMAT_ASTC_5x5x5_UNORM_BLOCK_EXT"),
1967 std::make_pair(1000288019, "VK_FORMAT_ASTC_5x5x5_SRGB_BLOCK_EXT"),
1968 std::make_pair(1000288020, "VK_FORMAT_ASTC_5x5x5_SFLOAT_BLOCK_EXT"),
1969 std::make_pair(1000288021, "VK_FORMAT_ASTC_6x5x5_UNORM_BLOCK_EXT"),
1970 std::make_pair(1000288022, "VK_FORMAT_ASTC_6x5x5_SRGB_BLOCK_EXT"),
1971 std::make_pair(1000288023, "VK_FORMAT_ASTC_6x5x5_SFLOAT_BLOCK_EXT"),
1972 std::make_pair(1000288024, "VK_FORMAT_ASTC_6x6x5_UNORM_BLOCK_EXT"),
1973 std::make_pair(1000288025, "VK_FORMAT_ASTC_6x6x5_SRGB_BLOCK_EXT"),
1974 std::make_pair(1000288026, "VK_FORMAT_ASTC_6x6x5_SFLOAT_BLOCK_EXT"),
1975 std::make_pair(1000288027, "VK_FORMAT_ASTC_6x6x6_UNORM_BLOCK_EXT"),
1976 std::make_pair(1000288028, "VK_FORMAT_ASTC_6x6x6_SRGB_BLOCK_EXT"),
1977 std::make_pair(1000288029, "VK_FORMAT_ASTC_6x6x6_SFLOAT_BLOCK_EXT"),
1978 std::make_pair(1000330000, "VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT"),
1979 std::make_pair(1000330001, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT"),
1980 std::make_pair(1000330002, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT"),
1981 std::make_pair(1000330003, "VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT"),
1982 std::make_pair(1000340000, "VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT"),
1983 std::make_pair(1000340001, "VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT"),
1984 };
print_VkFormat(VkFormat obj,const std::string & str,bool commaNeeded=true)1985 static void print_VkFormat(VkFormat obj, const std::string& str, bool commaNeeded=true) {
1986 PRINT_SPACE
1987 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1988 if (commaNeeded)
1989 _OUT << "\"" << VkFormat_map[obj] << "\"," << std::endl;
1990 else
1991 _OUT << "\"" << VkFormat_map[obj] << "\"" << std::endl;
1992 }
print_VkFormat(const VkFormat * obj,const std::string & str,bool commaNeeded=true)1993 static void print_VkFormat(const VkFormat * obj, const std::string& str, bool commaNeeded=true) {
1994 PRINT_SPACE
1995 if (str != "") _OUT << "\"" << str << "\"" << " : ";
1996 if (commaNeeded)
1997 _OUT << "\"" << VkFormat_map[*obj] << "\"," << std::endl;
1998 else
1999 _OUT << "\"" << VkFormat_map[*obj] << "\"" << std::endl;
2000 }
2001
2002 static std::map<deUint64, std::string> VkFormatFeatureFlagBits_map = {
2003 std::make_pair(1ULL << 0, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT"),
2004 std::make_pair(1ULL << 1, "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT"),
2005 std::make_pair(1ULL << 2, "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT"),
2006 std::make_pair(1ULL << 3, "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT"),
2007 std::make_pair(1ULL << 4, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT"),
2008 std::make_pair(1ULL << 5, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT"),
2009 std::make_pair(1ULL << 6, "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT"),
2010 std::make_pair(1ULL << 7, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT"),
2011 std::make_pair(1ULL << 8, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT"),
2012 std::make_pair(1ULL << 9, "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT"),
2013 std::make_pair(1ULL << 10, "VK_FORMAT_FEATURE_BLIT_SRC_BIT"),
2014 std::make_pair(1ULL << 11, "VK_FORMAT_FEATURE_BLIT_DST_BIT"),
2015 std::make_pair(1ULL << 12, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT"),
2016 std::make_pair(1ULL << 14, "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT"),
2017 std::make_pair(1ULL << 15, "VK_FORMAT_FEATURE_TRANSFER_DST_BIT"),
2018 std::make_pair(1ULL << 17, "VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT"),
2019 std::make_pair(1ULL << 18, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT"),
2020 std::make_pair(1ULL << 19, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT"),
2021 std::make_pair(1ULL << 20, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT"),
2022 std::make_pair(1ULL << 21, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT"),
2023 std::make_pair(1ULL << 22, "VK_FORMAT_FEATURE_DISJOINT_BIT"),
2024 std::make_pair(1ULL << 23, "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT"),
2025 std::make_pair(1ULL << 16, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT"),
2026 std::make_pair(1ULL << 13, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG"),
2027 std::make_pair(1ULL << 25, "VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR"),
2028 std::make_pair(1ULL << 26, "VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR"),
2029 std::make_pair(1ULL << 29, "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR"),
2030 std::make_pair(1ULL << 24, "VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT"),
2031 std::make_pair(1ULL << 30, "VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2032 std::make_pair(1ULL << 27, "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR"),
2033 std::make_pair(1ULL << 28, "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR"),
2034 };
print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj,const std::string & str,bool commaNeeded=true)2035 static void print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
2036 PRINT_SPACE
2037 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2038 if (commaNeeded)
2039 _OUT << "\"" << VkFormatFeatureFlagBits_map[obj] << "\"," << std::endl;
2040 else
2041 _OUT << "\"" << VkFormatFeatureFlagBits_map[obj] << "\"" << std::endl;
2042 }
print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits * obj,const std::string & str,bool commaNeeded=true)2043 static void print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2044 PRINT_SPACE
2045 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2046 if (commaNeeded)
2047 _OUT << "\"" << VkFormatFeatureFlagBits_map[*obj] << "\"," << std::endl;
2048 else
2049 _OUT << "\"" << VkFormatFeatureFlagBits_map[*obj] << "\"" << std::endl;
2050 }
2051
2052 static std::map<deUint64, std::string> VkImageCreateFlagBits_map = {
2053 std::make_pair(1ULL << 0, "VK_IMAGE_CREATE_SPARSE_BINDING_BIT"),
2054 std::make_pair(1ULL << 1, "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT"),
2055 std::make_pair(1ULL << 2, "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT"),
2056 std::make_pair(1ULL << 3, "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"),
2057 std::make_pair(1ULL << 4, "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"),
2058 std::make_pair(1ULL << 10, "VK_IMAGE_CREATE_ALIAS_BIT"),
2059 std::make_pair(1ULL << 6, "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT"),
2060 std::make_pair(1ULL << 5, "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT"),
2061 std::make_pair(1ULL << 7, "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT"),
2062 std::make_pair(1ULL << 8, "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT"),
2063 std::make_pair(1ULL << 11, "VK_IMAGE_CREATE_PROTECTED_BIT"),
2064 std::make_pair(1ULL << 9, "VK_IMAGE_CREATE_DISJOINT_BIT"),
2065 std::make_pair(1ULL << 13, "VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV"),
2066 std::make_pair(1ULL << 12, "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT"),
2067 std::make_pair(1ULL << 14, "VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT"),
2068 std::make_pair(1ULL << 16, "VK_IMAGE_CREATE_RESERVED_16_BIT_AMD"),
2069 std::make_pair(1ULL << 17, "VK_IMAGE_CREATE_RESERVED_394_BIT_EXT"),
2070 std::make_pair(1ULL << 15, "VK_IMAGE_CREATE_RESERVED_426_BIT_QCOM"),
2071 };
print_VkImageCreateFlagBits(VkImageCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2072 static void print_VkImageCreateFlagBits(VkImageCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2073 PRINT_SPACE
2074 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2075 if (commaNeeded)
2076 _OUT << "\"" << VkImageCreateFlagBits_map[obj] << "\"," << std::endl;
2077 else
2078 _OUT << "\"" << VkImageCreateFlagBits_map[obj] << "\"" << std::endl;
2079 }
print_VkImageCreateFlagBits(const VkImageCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2080 static void print_VkImageCreateFlagBits(const VkImageCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2081 PRINT_SPACE
2082 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2083 if (commaNeeded)
2084 _OUT << "\"" << VkImageCreateFlagBits_map[*obj] << "\"," << std::endl;
2085 else
2086 _OUT << "\"" << VkImageCreateFlagBits_map[*obj] << "\"" << std::endl;
2087 }
2088
2089 static std::map<deUint64, std::string> VkSampleCountFlagBits_map = {
2090 std::make_pair(1ULL << 0, "VK_SAMPLE_COUNT_1_BIT"),
2091 std::make_pair(1ULL << 1, "VK_SAMPLE_COUNT_2_BIT"),
2092 std::make_pair(1ULL << 2, "VK_SAMPLE_COUNT_4_BIT"),
2093 std::make_pair(1ULL << 3, "VK_SAMPLE_COUNT_8_BIT"),
2094 std::make_pair(1ULL << 4, "VK_SAMPLE_COUNT_16_BIT"),
2095 std::make_pair(1ULL << 5, "VK_SAMPLE_COUNT_32_BIT"),
2096 std::make_pair(1ULL << 6, "VK_SAMPLE_COUNT_64_BIT"),
2097 };
print_VkSampleCountFlagBits(VkSampleCountFlagBits obj,const std::string & str,bool commaNeeded=true)2098 static void print_VkSampleCountFlagBits(VkSampleCountFlagBits obj, const std::string& str, bool commaNeeded=true) {
2099 PRINT_SPACE
2100 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2101 if (commaNeeded)
2102 _OUT << "\"" << VkSampleCountFlagBits_map[obj] << "\"," << std::endl;
2103 else
2104 _OUT << "\"" << VkSampleCountFlagBits_map[obj] << "\"" << std::endl;
2105 }
print_VkSampleCountFlagBits(const VkSampleCountFlagBits * obj,const std::string & str,bool commaNeeded=true)2106 static void print_VkSampleCountFlagBits(const VkSampleCountFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2107 PRINT_SPACE
2108 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2109 if (commaNeeded)
2110 _OUT << "\"" << VkSampleCountFlagBits_map[*obj] << "\"," << std::endl;
2111 else
2112 _OUT << "\"" << VkSampleCountFlagBits_map[*obj] << "\"" << std::endl;
2113 }
2114
2115 static std::map<deUint64, std::string> VkImageTiling_map = {
2116 std::make_pair(0, "VK_IMAGE_TILING_OPTIMAL"),
2117 std::make_pair(1, "VK_IMAGE_TILING_LINEAR"),
2118 std::make_pair(1000158000, "VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT"),
2119 };
print_VkImageTiling(VkImageTiling obj,const std::string & str,bool commaNeeded=true)2120 static void print_VkImageTiling(VkImageTiling obj, const std::string& str, bool commaNeeded=true) {
2121 PRINT_SPACE
2122 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2123 if (commaNeeded)
2124 _OUT << "\"" << VkImageTiling_map[obj] << "\"," << std::endl;
2125 else
2126 _OUT << "\"" << VkImageTiling_map[obj] << "\"" << std::endl;
2127 }
print_VkImageTiling(const VkImageTiling * obj,const std::string & str,bool commaNeeded=true)2128 static void print_VkImageTiling(const VkImageTiling * obj, const std::string& str, bool commaNeeded=true) {
2129 PRINT_SPACE
2130 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2131 if (commaNeeded)
2132 _OUT << "\"" << VkImageTiling_map[*obj] << "\"," << std::endl;
2133 else
2134 _OUT << "\"" << VkImageTiling_map[*obj] << "\"" << std::endl;
2135 }
2136
2137 static std::map<deUint64, std::string> VkImageType_map = {
2138 std::make_pair(0, "VK_IMAGE_TYPE_1D"),
2139 std::make_pair(1, "VK_IMAGE_TYPE_2D"),
2140 std::make_pair(2, "VK_IMAGE_TYPE_3D"),
2141 };
print_VkImageType(VkImageType obj,const std::string & str,bool commaNeeded=true)2142 static void print_VkImageType(VkImageType obj, const std::string& str, bool commaNeeded=true) {
2143 PRINT_SPACE
2144 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2145 if (commaNeeded)
2146 _OUT << "\"" << VkImageType_map[obj] << "\"," << std::endl;
2147 else
2148 _OUT << "\"" << VkImageType_map[obj] << "\"" << std::endl;
2149 }
print_VkImageType(const VkImageType * obj,const std::string & str,bool commaNeeded=true)2150 static void print_VkImageType(const VkImageType * obj, const std::string& str, bool commaNeeded=true) {
2151 PRINT_SPACE
2152 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2153 if (commaNeeded)
2154 _OUT << "\"" << VkImageType_map[*obj] << "\"," << std::endl;
2155 else
2156 _OUT << "\"" << VkImageType_map[*obj] << "\"" << std::endl;
2157 }
2158
2159 static std::map<deUint64, std::string> VkImageUsageFlagBits_map = {
2160 std::make_pair(1ULL << 0, "VK_IMAGE_USAGE_TRANSFER_SRC_BIT"),
2161 std::make_pair(1ULL << 1, "VK_IMAGE_USAGE_TRANSFER_DST_BIT"),
2162 std::make_pair(1ULL << 2, "VK_IMAGE_USAGE_SAMPLED_BIT"),
2163 std::make_pair(1ULL << 3, "VK_IMAGE_USAGE_STORAGE_BIT"),
2164 std::make_pair(1ULL << 4, "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT"),
2165 std::make_pair(1ULL << 5, "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT"),
2166 std::make_pair(1ULL << 6, "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT"),
2167 std::make_pair(1ULL << 7, "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT"),
2168 std::make_pair(1ULL << 10, "VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR"),
2169 std::make_pair(1ULL << 11, "VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR"),
2170 std::make_pair(1ULL << 12, "VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR"),
2171 std::make_pair(1ULL << 16, "VK_IMAGE_USAGE_RESERVED_16_BIT_QCOM"),
2172 std::make_pair(1ULL << 17, "VK_IMAGE_USAGE_RESERVED_17_BIT_QCOM"),
2173 std::make_pair(1ULL << 9, "VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT"),
2174 std::make_pair(1ULL << 8, "VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2175 std::make_pair(1ULL << 13, "VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR"),
2176 std::make_pair(1ULL << 14, "VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR"),
2177 std::make_pair(1ULL << 15, "VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR"),
2178 std::make_pair(1ULL << 19, "VK_IMAGE_USAGE_RESERVED_19_BIT_EXT"),
2179 std::make_pair(1ULL << 18, "VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI"),
2180 };
print_VkImageUsageFlagBits(VkImageUsageFlagBits obj,const std::string & str,bool commaNeeded=true)2181 static void print_VkImageUsageFlagBits(VkImageUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
2182 PRINT_SPACE
2183 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2184 if (commaNeeded)
2185 _OUT << "\"" << VkImageUsageFlagBits_map[obj] << "\"," << std::endl;
2186 else
2187 _OUT << "\"" << VkImageUsageFlagBits_map[obj] << "\"" << std::endl;
2188 }
print_VkImageUsageFlagBits(const VkImageUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)2189 static void print_VkImageUsageFlagBits(const VkImageUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2190 PRINT_SPACE
2191 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2192 if (commaNeeded)
2193 _OUT << "\"" << VkImageUsageFlagBits_map[*obj] << "\"," << std::endl;
2194 else
2195 _OUT << "\"" << VkImageUsageFlagBits_map[*obj] << "\"" << std::endl;
2196 }
2197
2198 static std::map<deUint64, std::string> VkMemoryHeapFlagBits_map = {
2199 std::make_pair(1ULL << 0, "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT"),
2200 std::make_pair(1ULL << 1, "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT"),
2201 std::make_pair(1ULL << 2, "VK_MEMORY_HEAP_SEU_SAFE_BIT"),
2202 };
print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj,const std::string & str,bool commaNeeded=true)2203 static void print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj, const std::string& str, bool commaNeeded=true) {
2204 PRINT_SPACE
2205 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2206 if (commaNeeded)
2207 _OUT << "\"" << VkMemoryHeapFlagBits_map[obj] << "\"," << std::endl;
2208 else
2209 _OUT << "\"" << VkMemoryHeapFlagBits_map[obj] << "\"" << std::endl;
2210 }
print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits * obj,const std::string & str,bool commaNeeded=true)2211 static void print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2212 PRINT_SPACE
2213 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2214 if (commaNeeded)
2215 _OUT << "\"" << VkMemoryHeapFlagBits_map[*obj] << "\"," << std::endl;
2216 else
2217 _OUT << "\"" << VkMemoryHeapFlagBits_map[*obj] << "\"" << std::endl;
2218 }
2219
2220 static std::map<deUint64, std::string> VkMemoryPropertyFlagBits_map = {
2221 std::make_pair(1ULL << 0, "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT"),
2222 std::make_pair(1ULL << 1, "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT"),
2223 std::make_pair(1ULL << 2, "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT"),
2224 std::make_pair(1ULL << 3, "VK_MEMORY_PROPERTY_HOST_CACHED_BIT"),
2225 std::make_pair(1ULL << 4, "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT"),
2226 std::make_pair(1ULL << 5, "VK_MEMORY_PROPERTY_PROTECTED_BIT"),
2227 std::make_pair(1ULL << 6, "VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD"),
2228 std::make_pair(1ULL << 7, "VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD"),
2229 std::make_pair(1ULL << 8, "VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV"),
2230 };
print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj,const std::string & str,bool commaNeeded=true)2231 static void print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj, const std::string& str, bool commaNeeded=true) {
2232 PRINT_SPACE
2233 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2234 if (commaNeeded)
2235 _OUT << "\"" << VkMemoryPropertyFlagBits_map[obj] << "\"," << std::endl;
2236 else
2237 _OUT << "\"" << VkMemoryPropertyFlagBits_map[obj] << "\"" << std::endl;
2238 }
print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits * obj,const std::string & str,bool commaNeeded=true)2239 static void print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2240 PRINT_SPACE
2241 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2242 if (commaNeeded)
2243 _OUT << "\"" << VkMemoryPropertyFlagBits_map[*obj] << "\"," << std::endl;
2244 else
2245 _OUT << "\"" << VkMemoryPropertyFlagBits_map[*obj] << "\"" << std::endl;
2246 }
2247
2248 static std::map<deUint64, std::string> VkPhysicalDeviceType_map = {
2249 std::make_pair(0, "VK_PHYSICAL_DEVICE_TYPE_OTHER"),
2250 std::make_pair(1, "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU"),
2251 std::make_pair(2, "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU"),
2252 std::make_pair(3, "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU"),
2253 std::make_pair(4, "VK_PHYSICAL_DEVICE_TYPE_CPU"),
2254 };
print_VkPhysicalDeviceType(VkPhysicalDeviceType obj,const std::string & str,bool commaNeeded=true)2255 static void print_VkPhysicalDeviceType(VkPhysicalDeviceType obj, const std::string& str, bool commaNeeded=true) {
2256 PRINT_SPACE
2257 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2258 if (commaNeeded)
2259 _OUT << "\"" << VkPhysicalDeviceType_map[obj] << "\"," << std::endl;
2260 else
2261 _OUT << "\"" << VkPhysicalDeviceType_map[obj] << "\"" << std::endl;
2262 }
print_VkPhysicalDeviceType(const VkPhysicalDeviceType * obj,const std::string & str,bool commaNeeded=true)2263 static void print_VkPhysicalDeviceType(const VkPhysicalDeviceType * obj, const std::string& str, bool commaNeeded=true) {
2264 PRINT_SPACE
2265 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2266 if (commaNeeded)
2267 _OUT << "\"" << VkPhysicalDeviceType_map[*obj] << "\"," << std::endl;
2268 else
2269 _OUT << "\"" << VkPhysicalDeviceType_map[*obj] << "\"" << std::endl;
2270 }
2271
2272 static std::map<deUint64, std::string> VkQueueFlagBits_map = {
2273 std::make_pair(1ULL << 0, "VK_QUEUE_GRAPHICS_BIT"),
2274 std::make_pair(1ULL << 1, "VK_QUEUE_COMPUTE_BIT"),
2275 std::make_pair(1ULL << 2, "VK_QUEUE_TRANSFER_BIT"),
2276 std::make_pair(1ULL << 4, "VK_QUEUE_PROTECTED_BIT"),
2277 std::make_pair(1ULL << 5, "VK_QUEUE_VIDEO_DECODE_BIT_KHR"),
2278 std::make_pair(1ULL << 6, "VK_QUEUE_VIDEO_ENCODE_BIT_KHR"),
2279 };
print_VkQueueFlagBits(VkQueueFlagBits obj,const std::string & str,bool commaNeeded=true)2280 static void print_VkQueueFlagBits(VkQueueFlagBits obj, const std::string& str, bool commaNeeded=true) {
2281 PRINT_SPACE
2282 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2283 if (commaNeeded)
2284 _OUT << "\"" << VkQueueFlagBits_map[obj] << "\"," << std::endl;
2285 else
2286 _OUT << "\"" << VkQueueFlagBits_map[obj] << "\"" << std::endl;
2287 }
print_VkQueueFlagBits(const VkQueueFlagBits * obj,const std::string & str,bool commaNeeded=true)2288 static void print_VkQueueFlagBits(const VkQueueFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2289 PRINT_SPACE
2290 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2291 if (commaNeeded)
2292 _OUT << "\"" << VkQueueFlagBits_map[*obj] << "\"," << std::endl;
2293 else
2294 _OUT << "\"" << VkQueueFlagBits_map[*obj] << "\"" << std::endl;
2295 }
2296
2297 static std::map<deUint64, std::string> VkDeviceQueueCreateFlagBits_map = {
2298 std::make_pair(1ULL << 0, "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT"),
2299 };
print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2300 static void print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2301 PRINT_SPACE
2302 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2303 if (commaNeeded)
2304 _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[obj] << "\"," << std::endl;
2305 else
2306 _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[obj] << "\"" << std::endl;
2307 }
print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2308 static void print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2309 PRINT_SPACE
2310 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2311 if (commaNeeded)
2312 _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[*obj] << "\"," << std::endl;
2313 else
2314 _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[*obj] << "\"" << std::endl;
2315 }
2316
2317 static std::map<deUint64, std::string> VkPipelineStageFlagBits_map = {
2318 std::make_pair(1ULL << 0, "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT"),
2319 std::make_pair(1ULL << 1, "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT"),
2320 std::make_pair(1ULL << 2, "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT"),
2321 std::make_pair(1ULL << 3, "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT"),
2322 std::make_pair(1ULL << 4, "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT"),
2323 std::make_pair(1ULL << 5, "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT"),
2324 std::make_pair(1ULL << 6, "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT"),
2325 std::make_pair(1ULL << 7, "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT"),
2326 std::make_pair(1ULL << 8, "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT"),
2327 std::make_pair(1ULL << 9, "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT"),
2328 std::make_pair(1ULL << 10, "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT"),
2329 std::make_pair(1ULL << 11, "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT"),
2330 std::make_pair(1ULL << 12, "VK_PIPELINE_STAGE_TRANSFER_BIT"),
2331 std::make_pair(1ULL << 13, "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT"),
2332 std::make_pair(1ULL << 14, "VK_PIPELINE_STAGE_HOST_BIT"),
2333 std::make_pair(1ULL << 15, "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT"),
2334 std::make_pair(1ULL << 16, "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT"),
2335 std::make_pair(1ULL << 24, "VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT"),
2336 std::make_pair(1ULL << 18, "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT"),
2337 std::make_pair(1ULL << 25, "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR"),
2338 std::make_pair(1ULL << 21, "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR"),
2339 std::make_pair(1ULL << 19, "VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV"),
2340 std::make_pair(1ULL << 20, "VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV"),
2341 std::make_pair(1ULL << 23, "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT"),
2342 std::make_pair(1ULL << 22, "VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2343 std::make_pair(1ULL << 17, "VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV"),
2344 std::make_pair(0, "VK_PIPELINE_STAGE_NONE_KHR"),
2345 };
print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj,const std::string & str,bool commaNeeded=true)2346 static void print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj, const std::string& str, bool commaNeeded=true) {
2347 PRINT_SPACE
2348 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2349 if (commaNeeded)
2350 _OUT << "\"" << VkPipelineStageFlagBits_map[obj] << "\"," << std::endl;
2351 else
2352 _OUT << "\"" << VkPipelineStageFlagBits_map[obj] << "\"" << std::endl;
2353 }
print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj,const std::string & str,bool commaNeeded=true)2354 static void print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2355 PRINT_SPACE
2356 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2357 if (commaNeeded)
2358 _OUT << "\"" << VkPipelineStageFlagBits_map[*obj] << "\"," << std::endl;
2359 else
2360 _OUT << "\"" << VkPipelineStageFlagBits_map[*obj] << "\"" << std::endl;
2361 }
2362
2363 static std::map<deUint64, std::string> VkFenceCreateFlagBits_map = {
2364 std::make_pair(1ULL << 0, "VK_FENCE_CREATE_SIGNALED_BIT"),
2365 };
print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2366 static void print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2367 PRINT_SPACE
2368 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2369 if (commaNeeded)
2370 _OUT << "\"" << VkFenceCreateFlagBits_map[obj] << "\"," << std::endl;
2371 else
2372 _OUT << "\"" << VkFenceCreateFlagBits_map[obj] << "\"" << std::endl;
2373 }
print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2374 static void print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2375 PRINT_SPACE
2376 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2377 if (commaNeeded)
2378 _OUT << "\"" << VkFenceCreateFlagBits_map[*obj] << "\"," << std::endl;
2379 else
2380 _OUT << "\"" << VkFenceCreateFlagBits_map[*obj] << "\"" << std::endl;
2381 }
2382
2383 static std::map<deUint64, std::string> VkEventCreateFlagBits_map = {
2384 std::make_pair(1ULL << 0, "VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR"),
2385 };
print_VkEventCreateFlagBits(VkEventCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2386 static void print_VkEventCreateFlagBits(VkEventCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2387 PRINT_SPACE
2388 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2389 if (commaNeeded)
2390 _OUT << "\"" << VkEventCreateFlagBits_map[obj] << "\"," << std::endl;
2391 else
2392 _OUT << "\"" << VkEventCreateFlagBits_map[obj] << "\"" << std::endl;
2393 }
print_VkEventCreateFlagBits(const VkEventCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2394 static void print_VkEventCreateFlagBits(const VkEventCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2395 PRINT_SPACE
2396 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2397 if (commaNeeded)
2398 _OUT << "\"" << VkEventCreateFlagBits_map[*obj] << "\"," << std::endl;
2399 else
2400 _OUT << "\"" << VkEventCreateFlagBits_map[*obj] << "\"" << std::endl;
2401 }
2402
2403 static std::map<deUint64, std::string> VkQueryPipelineStatisticFlagBits_map = {
2404 std::make_pair(1ULL << 0, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT"),
2405 std::make_pair(1ULL << 1, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT"),
2406 std::make_pair(1ULL << 2, "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT"),
2407 std::make_pair(1ULL << 3, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT"),
2408 std::make_pair(1ULL << 4, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT"),
2409 std::make_pair(1ULL << 5, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT"),
2410 std::make_pair(1ULL << 6, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT"),
2411 std::make_pair(1ULL << 7, "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT"),
2412 std::make_pair(1ULL << 8, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT"),
2413 std::make_pair(1ULL << 9, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT"),
2414 std::make_pair(1ULL << 10, "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT"),
2415 };
print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj,const std::string & str,bool commaNeeded=true)2416 static void print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj, const std::string& str, bool commaNeeded=true) {
2417 PRINT_SPACE
2418 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2419 if (commaNeeded)
2420 _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[obj] << "\"," << std::endl;
2421 else
2422 _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[obj] << "\"" << std::endl;
2423 }
print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits * obj,const std::string & str,bool commaNeeded=true)2424 static void print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2425 PRINT_SPACE
2426 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2427 if (commaNeeded)
2428 _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[*obj] << "\"," << std::endl;
2429 else
2430 _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[*obj] << "\"" << std::endl;
2431 }
2432
2433 static std::map<deUint64, std::string> VkQueryType_map = {
2434 std::make_pair(0, "VK_QUERY_TYPE_OCCLUSION"),
2435 std::make_pair(1, "VK_QUERY_TYPE_PIPELINE_STATISTICS"),
2436 std::make_pair(2, "VK_QUERY_TYPE_TIMESTAMP"),
2437 std::make_pair(1000023000, "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR"),
2438 std::make_pair(1000028004, "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT"),
2439 std::make_pair(1000116000, "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR"),
2440 std::make_pair(1000150000, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR"),
2441 std::make_pair(1000150001, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR"),
2442 std::make_pair(1000165000, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV"),
2443 std::make_pair(1000210000, "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL"),
2444 std::make_pair(1000299000, "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR"),
2445 };
print_VkQueryType(VkQueryType obj,const std::string & str,bool commaNeeded=true)2446 static void print_VkQueryType(VkQueryType obj, const std::string& str, bool commaNeeded=true) {
2447 PRINT_SPACE
2448 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2449 if (commaNeeded)
2450 _OUT << "\"" << VkQueryType_map[obj] << "\"," << std::endl;
2451 else
2452 _OUT << "\"" << VkQueryType_map[obj] << "\"" << std::endl;
2453 }
print_VkQueryType(const VkQueryType * obj,const std::string & str,bool commaNeeded=true)2454 static void print_VkQueryType(const VkQueryType * obj, const std::string& str, bool commaNeeded=true) {
2455 PRINT_SPACE
2456 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2457 if (commaNeeded)
2458 _OUT << "\"" << VkQueryType_map[*obj] << "\"," << std::endl;
2459 else
2460 _OUT << "\"" << VkQueryType_map[*obj] << "\"" << std::endl;
2461 }
2462
2463 static std::map<deUint64, std::string> VkQueryResultFlagBits_map = {
2464 std::make_pair(1ULL << 0, "VK_QUERY_RESULT_64_BIT"),
2465 std::make_pair(1ULL << 1, "VK_QUERY_RESULT_WAIT_BIT"),
2466 std::make_pair(1ULL << 2, "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT"),
2467 std::make_pair(1ULL << 3, "VK_QUERY_RESULT_PARTIAL_BIT"),
2468 std::make_pair(1ULL << 4, "VK_QUERY_RESULT_WITH_STATUS_BIT_KHR"),
2469 };
print_VkQueryResultFlagBits(VkQueryResultFlagBits obj,const std::string & str,bool commaNeeded=true)2470 static void print_VkQueryResultFlagBits(VkQueryResultFlagBits obj, const std::string& str, bool commaNeeded=true) {
2471 PRINT_SPACE
2472 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2473 if (commaNeeded)
2474 _OUT << "\"" << VkQueryResultFlagBits_map[obj] << "\"," << std::endl;
2475 else
2476 _OUT << "\"" << VkQueryResultFlagBits_map[obj] << "\"" << std::endl;
2477 }
print_VkQueryResultFlagBits(const VkQueryResultFlagBits * obj,const std::string & str,bool commaNeeded=true)2478 static void print_VkQueryResultFlagBits(const VkQueryResultFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2479 PRINT_SPACE
2480 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2481 if (commaNeeded)
2482 _OUT << "\"" << VkQueryResultFlagBits_map[*obj] << "\"," << std::endl;
2483 else
2484 _OUT << "\"" << VkQueryResultFlagBits_map[*obj] << "\"" << std::endl;
2485 }
2486
2487 static std::map<deUint64, std::string> VkBufferCreateFlagBits_map = {
2488 std::make_pair(1ULL << 0, "VK_BUFFER_CREATE_SPARSE_BINDING_BIT"),
2489 std::make_pair(1ULL << 1, "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT"),
2490 std::make_pair(1ULL << 2, "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT"),
2491 std::make_pair(1ULL << 3, "VK_BUFFER_CREATE_PROTECTED_BIT"),
2492 std::make_pair(1ULL << 4, "VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT"),
2493 std::make_pair(1ULL << 5, "VK_BUFFER_CREATE_RESERVED_5_BIT_AMD"),
2494 };
print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2495 static void print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2496 PRINT_SPACE
2497 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2498 if (commaNeeded)
2499 _OUT << "\"" << VkBufferCreateFlagBits_map[obj] << "\"," << std::endl;
2500 else
2501 _OUT << "\"" << VkBufferCreateFlagBits_map[obj] << "\"" << std::endl;
2502 }
print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2503 static void print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2504 PRINT_SPACE
2505 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2506 if (commaNeeded)
2507 _OUT << "\"" << VkBufferCreateFlagBits_map[*obj] << "\"," << std::endl;
2508 else
2509 _OUT << "\"" << VkBufferCreateFlagBits_map[*obj] << "\"" << std::endl;
2510 }
2511
2512 static std::map<deUint64, std::string> VkBufferUsageFlagBits_map = {
2513 std::make_pair(1ULL << 0, "VK_BUFFER_USAGE_TRANSFER_SRC_BIT"),
2514 std::make_pair(1ULL << 1, "VK_BUFFER_USAGE_TRANSFER_DST_BIT"),
2515 std::make_pair(1ULL << 2, "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT"),
2516 std::make_pair(1ULL << 3, "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT"),
2517 std::make_pair(1ULL << 4, "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT"),
2518 std::make_pair(1ULL << 5, "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT"),
2519 std::make_pair(1ULL << 6, "VK_BUFFER_USAGE_INDEX_BUFFER_BIT"),
2520 std::make_pair(1ULL << 7, "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT"),
2521 std::make_pair(1ULL << 8, "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT"),
2522 std::make_pair(1ULL << 17, "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT"),
2523 std::make_pair(1ULL << 13, "VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR"),
2524 std::make_pair(1ULL << 14, "VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR"),
2525 std::make_pair(1ULL << 11, "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT"),
2526 std::make_pair(1ULL << 12, "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT"),
2527 std::make_pair(1ULL << 9, "VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT"),
2528 std::make_pair(1ULL << 19, "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR"),
2529 std::make_pair(1ULL << 20, "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR"),
2530 std::make_pair(1ULL << 10, "VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR"),
2531 std::make_pair(1ULL << 18, "VK_BUFFER_USAGE_RESERVED_18_BIT_QCOM"),
2532 std::make_pair(1ULL << 15, "VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR"),
2533 std::make_pair(1ULL << 16, "VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR"),
2534 std::make_pair(1ULL << 21, "VK_BUFFER_USAGE_RESERVED_21_BIT_AMD"),
2535 std::make_pair(1ULL << 22, "VK_BUFFER_USAGE_RESERVED_22_BIT_AMD"),
2536 };
print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj,const std::string & str,bool commaNeeded=true)2537 static void print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
2538 PRINT_SPACE
2539 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2540 if (commaNeeded)
2541 _OUT << "\"" << VkBufferUsageFlagBits_map[obj] << "\"," << std::endl;
2542 else
2543 _OUT << "\"" << VkBufferUsageFlagBits_map[obj] << "\"" << std::endl;
2544 }
print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)2545 static void print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2546 PRINT_SPACE
2547 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2548 if (commaNeeded)
2549 _OUT << "\"" << VkBufferUsageFlagBits_map[*obj] << "\"," << std::endl;
2550 else
2551 _OUT << "\"" << VkBufferUsageFlagBits_map[*obj] << "\"" << std::endl;
2552 }
2553
2554 static std::map<deUint64, std::string> VkSharingMode_map = {
2555 std::make_pair(0, "VK_SHARING_MODE_EXCLUSIVE"),
2556 std::make_pair(1, "VK_SHARING_MODE_CONCURRENT"),
2557 };
print_VkSharingMode(VkSharingMode obj,const std::string & str,bool commaNeeded=true)2558 static void print_VkSharingMode(VkSharingMode obj, const std::string& str, bool commaNeeded=true) {
2559 PRINT_SPACE
2560 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2561 if (commaNeeded)
2562 _OUT << "\"" << VkSharingMode_map[obj] << "\"," << std::endl;
2563 else
2564 _OUT << "\"" << VkSharingMode_map[obj] << "\"" << std::endl;
2565 }
print_VkSharingMode(const VkSharingMode * obj,const std::string & str,bool commaNeeded=true)2566 static void print_VkSharingMode(const VkSharingMode * obj, const std::string& str, bool commaNeeded=true) {
2567 PRINT_SPACE
2568 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2569 if (commaNeeded)
2570 _OUT << "\"" << VkSharingMode_map[*obj] << "\"," << std::endl;
2571 else
2572 _OUT << "\"" << VkSharingMode_map[*obj] << "\"" << std::endl;
2573 }
2574
2575 static std::map<deUint64, std::string> VkComponentSwizzle_map = {
2576 std::make_pair(0, "VK_COMPONENT_SWIZZLE_IDENTITY"),
2577 std::make_pair(1, "VK_COMPONENT_SWIZZLE_ZERO"),
2578 std::make_pair(2, "VK_COMPONENT_SWIZZLE_ONE"),
2579 std::make_pair(3, "VK_COMPONENT_SWIZZLE_R"),
2580 std::make_pair(4, "VK_COMPONENT_SWIZZLE_G"),
2581 std::make_pair(5, "VK_COMPONENT_SWIZZLE_B"),
2582 std::make_pair(6, "VK_COMPONENT_SWIZZLE_A"),
2583 };
print_VkComponentSwizzle(VkComponentSwizzle obj,const std::string & str,bool commaNeeded=true)2584 static void print_VkComponentSwizzle(VkComponentSwizzle obj, const std::string& str, bool commaNeeded=true) {
2585 PRINT_SPACE
2586 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2587 if (commaNeeded)
2588 _OUT << "\"" << VkComponentSwizzle_map[obj] << "\"," << std::endl;
2589 else
2590 _OUT << "\"" << VkComponentSwizzle_map[obj] << "\"" << std::endl;
2591 }
print_VkComponentSwizzle(const VkComponentSwizzle * obj,const std::string & str,bool commaNeeded=true)2592 static void print_VkComponentSwizzle(const VkComponentSwizzle * obj, const std::string& str, bool commaNeeded=true) {
2593 PRINT_SPACE
2594 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2595 if (commaNeeded)
2596 _OUT << "\"" << VkComponentSwizzle_map[*obj] << "\"," << std::endl;
2597 else
2598 _OUT << "\"" << VkComponentSwizzle_map[*obj] << "\"" << std::endl;
2599 }
2600
2601 static std::map<deUint64, std::string> VkImageViewCreateFlagBits_map = {
2602 std::make_pair(1ULL << 0, "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT"),
2603 std::make_pair(1ULL << 1, "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT"),
2604 };
print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2605 static void print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2606 PRINT_SPACE
2607 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2608 if (commaNeeded)
2609 _OUT << "\"" << VkImageViewCreateFlagBits_map[obj] << "\"," << std::endl;
2610 else
2611 _OUT << "\"" << VkImageViewCreateFlagBits_map[obj] << "\"" << std::endl;
2612 }
print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2613 static void print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2614 PRINT_SPACE
2615 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2616 if (commaNeeded)
2617 _OUT << "\"" << VkImageViewCreateFlagBits_map[*obj] << "\"," << std::endl;
2618 else
2619 _OUT << "\"" << VkImageViewCreateFlagBits_map[*obj] << "\"" << std::endl;
2620 }
2621
2622 static std::map<deUint64, std::string> VkImageViewType_map = {
2623 std::make_pair(0, "VK_IMAGE_VIEW_TYPE_1D"),
2624 std::make_pair(1, "VK_IMAGE_VIEW_TYPE_2D"),
2625 std::make_pair(2, "VK_IMAGE_VIEW_TYPE_3D"),
2626 std::make_pair(3, "VK_IMAGE_VIEW_TYPE_CUBE"),
2627 std::make_pair(4, "VK_IMAGE_VIEW_TYPE_1D_ARRAY"),
2628 std::make_pair(5, "VK_IMAGE_VIEW_TYPE_2D_ARRAY"),
2629 std::make_pair(6, "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY"),
2630 };
print_VkImageViewType(VkImageViewType obj,const std::string & str,bool commaNeeded=true)2631 static void print_VkImageViewType(VkImageViewType obj, const std::string& str, bool commaNeeded=true) {
2632 PRINT_SPACE
2633 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2634 if (commaNeeded)
2635 _OUT << "\"" << VkImageViewType_map[obj] << "\"," << std::endl;
2636 else
2637 _OUT << "\"" << VkImageViewType_map[obj] << "\"" << std::endl;
2638 }
print_VkImageViewType(const VkImageViewType * obj,const std::string & str,bool commaNeeded=true)2639 static void print_VkImageViewType(const VkImageViewType * obj, const std::string& str, bool commaNeeded=true) {
2640 PRINT_SPACE
2641 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2642 if (commaNeeded)
2643 _OUT << "\"" << VkImageViewType_map[*obj] << "\"," << std::endl;
2644 else
2645 _OUT << "\"" << VkImageViewType_map[*obj] << "\"" << std::endl;
2646 }
2647
2648 static std::map<deUint64, std::string> VkPipelineCacheCreateFlagBits_map = {
2649 std::make_pair(1ULL << 2, "VK_PIPELINE_CACHE_CREATE_USE_APPLICATION_STORAGE_BIT"),
2650 std::make_pair(1ULL << 1, "VK_PIPELINE_CACHE_CREATE_RESERVED_1_BIT_EXT"),
2651 std::make_pair(1ULL << 0, "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT"),
2652 };
print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2653 static void print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2654 PRINT_SPACE
2655 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2656 if (commaNeeded)
2657 _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[obj] << "\"," << std::endl;
2658 else
2659 _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[obj] << "\"" << std::endl;
2660 }
print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2661 static void print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2662 PRINT_SPACE
2663 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2664 if (commaNeeded)
2665 _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[*obj] << "\"," << std::endl;
2666 else
2667 _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[*obj] << "\"" << std::endl;
2668 }
2669
2670 static std::map<deUint64, std::string> VkBlendFactor_map = {
2671 std::make_pair(0, "VK_BLEND_FACTOR_ZERO"),
2672 std::make_pair(1, "VK_BLEND_FACTOR_ONE"),
2673 std::make_pair(2, "VK_BLEND_FACTOR_SRC_COLOR"),
2674 std::make_pair(3, "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR"),
2675 std::make_pair(4, "VK_BLEND_FACTOR_DST_COLOR"),
2676 std::make_pair(5, "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR"),
2677 std::make_pair(6, "VK_BLEND_FACTOR_SRC_ALPHA"),
2678 std::make_pair(7, "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA"),
2679 std::make_pair(8, "VK_BLEND_FACTOR_DST_ALPHA"),
2680 std::make_pair(9, "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA"),
2681 std::make_pair(10, "VK_BLEND_FACTOR_CONSTANT_COLOR"),
2682 std::make_pair(11, "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR"),
2683 std::make_pair(12, "VK_BLEND_FACTOR_CONSTANT_ALPHA"),
2684 std::make_pair(13, "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA"),
2685 std::make_pair(14, "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE"),
2686 std::make_pair(15, "VK_BLEND_FACTOR_SRC1_COLOR"),
2687 std::make_pair(16, "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR"),
2688 std::make_pair(17, "VK_BLEND_FACTOR_SRC1_ALPHA"),
2689 std::make_pair(18, "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA"),
2690 };
print_VkBlendFactor(VkBlendFactor obj,const std::string & str,bool commaNeeded=true)2691 static void print_VkBlendFactor(VkBlendFactor obj, const std::string& str, bool commaNeeded=true) {
2692 PRINT_SPACE
2693 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2694 if (commaNeeded)
2695 _OUT << "\"" << VkBlendFactor_map[obj] << "\"," << std::endl;
2696 else
2697 _OUT << "\"" << VkBlendFactor_map[obj] << "\"" << std::endl;
2698 }
print_VkBlendFactor(const VkBlendFactor * obj,const std::string & str,bool commaNeeded=true)2699 static void print_VkBlendFactor(const VkBlendFactor * obj, const std::string& str, bool commaNeeded=true) {
2700 PRINT_SPACE
2701 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2702 if (commaNeeded)
2703 _OUT << "\"" << VkBlendFactor_map[*obj] << "\"," << std::endl;
2704 else
2705 _OUT << "\"" << VkBlendFactor_map[*obj] << "\"" << std::endl;
2706 }
2707
2708 static std::map<deUint64, std::string> VkBlendOp_map = {
2709 std::make_pair(0, "VK_BLEND_OP_ADD"),
2710 std::make_pair(1, "VK_BLEND_OP_SUBTRACT"),
2711 std::make_pair(2, "VK_BLEND_OP_REVERSE_SUBTRACT"),
2712 std::make_pair(3, "VK_BLEND_OP_MIN"),
2713 std::make_pair(4, "VK_BLEND_OP_MAX"),
2714 std::make_pair(1000148000, "VK_BLEND_OP_ZERO_EXT"),
2715 std::make_pair(1000148001, "VK_BLEND_OP_SRC_EXT"),
2716 std::make_pair(1000148002, "VK_BLEND_OP_DST_EXT"),
2717 std::make_pair(1000148003, "VK_BLEND_OP_SRC_OVER_EXT"),
2718 std::make_pair(1000148004, "VK_BLEND_OP_DST_OVER_EXT"),
2719 std::make_pair(1000148005, "VK_BLEND_OP_SRC_IN_EXT"),
2720 std::make_pair(1000148006, "VK_BLEND_OP_DST_IN_EXT"),
2721 std::make_pair(1000148007, "VK_BLEND_OP_SRC_OUT_EXT"),
2722 std::make_pair(1000148008, "VK_BLEND_OP_DST_OUT_EXT"),
2723 std::make_pair(1000148009, "VK_BLEND_OP_SRC_ATOP_EXT"),
2724 std::make_pair(1000148010, "VK_BLEND_OP_DST_ATOP_EXT"),
2725 std::make_pair(1000148011, "VK_BLEND_OP_XOR_EXT"),
2726 std::make_pair(1000148012, "VK_BLEND_OP_MULTIPLY_EXT"),
2727 std::make_pair(1000148013, "VK_BLEND_OP_SCREEN_EXT"),
2728 std::make_pair(1000148014, "VK_BLEND_OP_OVERLAY_EXT"),
2729 std::make_pair(1000148015, "VK_BLEND_OP_DARKEN_EXT"),
2730 std::make_pair(1000148016, "VK_BLEND_OP_LIGHTEN_EXT"),
2731 std::make_pair(1000148017, "VK_BLEND_OP_COLORDODGE_EXT"),
2732 std::make_pair(1000148018, "VK_BLEND_OP_COLORBURN_EXT"),
2733 std::make_pair(1000148019, "VK_BLEND_OP_HARDLIGHT_EXT"),
2734 std::make_pair(1000148020, "VK_BLEND_OP_SOFTLIGHT_EXT"),
2735 std::make_pair(1000148021, "VK_BLEND_OP_DIFFERENCE_EXT"),
2736 std::make_pair(1000148022, "VK_BLEND_OP_EXCLUSION_EXT"),
2737 std::make_pair(1000148023, "VK_BLEND_OP_INVERT_EXT"),
2738 std::make_pair(1000148024, "VK_BLEND_OP_INVERT_RGB_EXT"),
2739 std::make_pair(1000148025, "VK_BLEND_OP_LINEARDODGE_EXT"),
2740 std::make_pair(1000148026, "VK_BLEND_OP_LINEARBURN_EXT"),
2741 std::make_pair(1000148027, "VK_BLEND_OP_VIVIDLIGHT_EXT"),
2742 std::make_pair(1000148028, "VK_BLEND_OP_LINEARLIGHT_EXT"),
2743 std::make_pair(1000148029, "VK_BLEND_OP_PINLIGHT_EXT"),
2744 std::make_pair(1000148030, "VK_BLEND_OP_HARDMIX_EXT"),
2745 std::make_pair(1000148031, "VK_BLEND_OP_HSL_HUE_EXT"),
2746 std::make_pair(1000148032, "VK_BLEND_OP_HSL_SATURATION_EXT"),
2747 std::make_pair(1000148033, "VK_BLEND_OP_HSL_COLOR_EXT"),
2748 std::make_pair(1000148034, "VK_BLEND_OP_HSL_LUMINOSITY_EXT"),
2749 std::make_pair(1000148035, "VK_BLEND_OP_PLUS_EXT"),
2750 std::make_pair(1000148036, "VK_BLEND_OP_PLUS_CLAMPED_EXT"),
2751 std::make_pair(1000148037, "VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT"),
2752 std::make_pair(1000148038, "VK_BLEND_OP_PLUS_DARKER_EXT"),
2753 std::make_pair(1000148039, "VK_BLEND_OP_MINUS_EXT"),
2754 std::make_pair(1000148040, "VK_BLEND_OP_MINUS_CLAMPED_EXT"),
2755 std::make_pair(1000148041, "VK_BLEND_OP_CONTRAST_EXT"),
2756 std::make_pair(1000148042, "VK_BLEND_OP_INVERT_OVG_EXT"),
2757 std::make_pair(1000148043, "VK_BLEND_OP_RED_EXT"),
2758 std::make_pair(1000148044, "VK_BLEND_OP_GREEN_EXT"),
2759 std::make_pair(1000148045, "VK_BLEND_OP_BLUE_EXT"),
2760 };
print_VkBlendOp(VkBlendOp obj,const std::string & str,bool commaNeeded=true)2761 static void print_VkBlendOp(VkBlendOp obj, const std::string& str, bool commaNeeded=true) {
2762 PRINT_SPACE
2763 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2764 if (commaNeeded)
2765 _OUT << "\"" << VkBlendOp_map[obj] << "\"," << std::endl;
2766 else
2767 _OUT << "\"" << VkBlendOp_map[obj] << "\"" << std::endl;
2768 }
print_VkBlendOp(const VkBlendOp * obj,const std::string & str,bool commaNeeded=true)2769 static void print_VkBlendOp(const VkBlendOp * obj, const std::string& str, bool commaNeeded=true) {
2770 PRINT_SPACE
2771 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2772 if (commaNeeded)
2773 _OUT << "\"" << VkBlendOp_map[*obj] << "\"," << std::endl;
2774 else
2775 _OUT << "\"" << VkBlendOp_map[*obj] << "\"" << std::endl;
2776 }
2777
2778 static std::map<deUint64, std::string> VkColorComponentFlagBits_map = {
2779 std::make_pair(1ULL << 0, "VK_COLOR_COMPONENT_R_BIT"),
2780 std::make_pair(1ULL << 1, "VK_COLOR_COMPONENT_G_BIT"),
2781 std::make_pair(1ULL << 2, "VK_COLOR_COMPONENT_B_BIT"),
2782 std::make_pair(1ULL << 3, "VK_COLOR_COMPONENT_A_BIT"),
2783 };
print_VkColorComponentFlagBits(VkColorComponentFlagBits obj,const std::string & str,bool commaNeeded=true)2784 static void print_VkColorComponentFlagBits(VkColorComponentFlagBits obj, const std::string& str, bool commaNeeded=true) {
2785 PRINT_SPACE
2786 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2787 if (commaNeeded)
2788 _OUT << "\"" << VkColorComponentFlagBits_map[obj] << "\"," << std::endl;
2789 else
2790 _OUT << "\"" << VkColorComponentFlagBits_map[obj] << "\"" << std::endl;
2791 }
print_VkColorComponentFlagBits(const VkColorComponentFlagBits * obj,const std::string & str,bool commaNeeded=true)2792 static void print_VkColorComponentFlagBits(const VkColorComponentFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2793 PRINT_SPACE
2794 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2795 if (commaNeeded)
2796 _OUT << "\"" << VkColorComponentFlagBits_map[*obj] << "\"," << std::endl;
2797 else
2798 _OUT << "\"" << VkColorComponentFlagBits_map[*obj] << "\"" << std::endl;
2799 }
2800
2801 static std::map<deUint64, std::string> VkCompareOp_map = {
2802 std::make_pair(0, "VK_COMPARE_OP_NEVER"),
2803 std::make_pair(1, "VK_COMPARE_OP_LESS"),
2804 std::make_pair(2, "VK_COMPARE_OP_EQUAL"),
2805 std::make_pair(3, "VK_COMPARE_OP_LESS_OR_EQUAL"),
2806 std::make_pair(4, "VK_COMPARE_OP_GREATER"),
2807 std::make_pair(5, "VK_COMPARE_OP_NOT_EQUAL"),
2808 std::make_pair(6, "VK_COMPARE_OP_GREATER_OR_EQUAL"),
2809 std::make_pair(7, "VK_COMPARE_OP_ALWAYS"),
2810 };
print_VkCompareOp(VkCompareOp obj,const std::string & str,bool commaNeeded=true)2811 static void print_VkCompareOp(VkCompareOp obj, const std::string& str, bool commaNeeded=true) {
2812 PRINT_SPACE
2813 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2814 if (commaNeeded)
2815 _OUT << "\"" << VkCompareOp_map[obj] << "\"," << std::endl;
2816 else
2817 _OUT << "\"" << VkCompareOp_map[obj] << "\"" << std::endl;
2818 }
print_VkCompareOp(const VkCompareOp * obj,const std::string & str,bool commaNeeded=true)2819 static void print_VkCompareOp(const VkCompareOp * obj, const std::string& str, bool commaNeeded=true) {
2820 PRINT_SPACE
2821 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2822 if (commaNeeded)
2823 _OUT << "\"" << VkCompareOp_map[*obj] << "\"," << std::endl;
2824 else
2825 _OUT << "\"" << VkCompareOp_map[*obj] << "\"" << std::endl;
2826 }
2827
2828 static std::map<deUint64, std::string> VkPipelineCreateFlagBits_map = {
2829 std::make_pair(1ULL << 0, "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"),
2830 std::make_pair(1ULL << 1, "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"),
2831 std::make_pair(1ULL << 3, "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"),
2832 std::make_pair(1ULL << 4, "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT"),
2833 std::make_pair(1ULL << 21, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2834 std::make_pair(1ULL << 22, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"),
2835 std::make_pair(1ULL << 14, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR"),
2836 std::make_pair(1ULL << 15, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR"),
2837 std::make_pair(1ULL << 16, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR"),
2838 std::make_pair(1ULL << 17, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR"),
2839 std::make_pair(1ULL << 12, "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR"),
2840 std::make_pair(1ULL << 13, "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR"),
2841 std::make_pair(1ULL << 19, "VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR"),
2842 std::make_pair(1ULL << 5, "VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV"),
2843 std::make_pair(1ULL << 6, "VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR"),
2844 std::make_pair(1ULL << 7, "VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR"),
2845 std::make_pair(1ULL << 18, "VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV"),
2846 std::make_pair(1ULL << 11, "VK_PIPELINE_CREATE_LIBRARY_BIT_KHR"),
2847 std::make_pair(1ULL << 8, "VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT"),
2848 std::make_pair(1ULL << 9, "VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT"),
2849 std::make_pair(1ULL << 23, "VK_PIPELINE_CREATE_RESERVED_23_BIT_AMD"),
2850 std::make_pair(1ULL << 10, "VK_PIPELINE_CREATE_RESERVED_10_BIT_AMD"),
2851 std::make_pair(1ULL << 20, "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV"),
2852 };
print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2853 static void print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2854 PRINT_SPACE
2855 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2856 if (commaNeeded)
2857 _OUT << "\"" << VkPipelineCreateFlagBits_map[obj] << "\"," << std::endl;
2858 else
2859 _OUT << "\"" << VkPipelineCreateFlagBits_map[obj] << "\"" << std::endl;
2860 }
print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2861 static void print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2862 PRINT_SPACE
2863 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2864 if (commaNeeded)
2865 _OUT << "\"" << VkPipelineCreateFlagBits_map[*obj] << "\"," << std::endl;
2866 else
2867 _OUT << "\"" << VkPipelineCreateFlagBits_map[*obj] << "\"" << std::endl;
2868 }
2869
2870 static std::map<deUint64, std::string> VkPipelineShaderStageCreateFlagBits_map = {
2871 std::make_pair(1ULL << 2, "VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_2_BIT_NV"),
2872 std::make_pair(1ULL << 0, "VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT"),
2873 std::make_pair(1ULL << 1, "VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT"),
2874 std::make_pair(1ULL << 3, "VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_3_BIT_KHR"),
2875 };
print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2876 static void print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2877 PRINT_SPACE
2878 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2879 if (commaNeeded)
2880 _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[obj] << "\"," << std::endl;
2881 else
2882 _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[obj] << "\"" << std::endl;
2883 }
print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2884 static void print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2885 PRINT_SPACE
2886 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2887 if (commaNeeded)
2888 _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[*obj] << "\"," << std::endl;
2889 else
2890 _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[*obj] << "\"" << std::endl;
2891 }
2892
2893 static std::map<deUint64, std::string> VkShaderStageFlagBits_map = {
2894 std::make_pair(1ULL << 0, "VK_SHADER_STAGE_VERTEX_BIT"),
2895 std::make_pair(1ULL << 1, "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT"),
2896 std::make_pair(1ULL << 2, "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT"),
2897 std::make_pair(1ULL << 3, "VK_SHADER_STAGE_GEOMETRY_BIT"),
2898 std::make_pair(1ULL << 4, "VK_SHADER_STAGE_FRAGMENT_BIT"),
2899 std::make_pair(1ULL << 5, "VK_SHADER_STAGE_COMPUTE_BIT"),
2900 std::make_pair(0x0000001F, "VK_SHADER_STAGE_ALL_GRAPHICS"),
2901 std::make_pair(0x7FFFFFFF, "VK_SHADER_STAGE_ALL"),
2902 std::make_pair(1ULL << 8, "VK_SHADER_STAGE_RAYGEN_BIT_KHR"),
2903 std::make_pair(1ULL << 9, "VK_SHADER_STAGE_ANY_HIT_BIT_KHR"),
2904 std::make_pair(1ULL << 10, "VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR"),
2905 std::make_pair(1ULL << 11, "VK_SHADER_STAGE_MISS_BIT_KHR"),
2906 std::make_pair(1ULL << 12, "VK_SHADER_STAGE_INTERSECTION_BIT_KHR"),
2907 std::make_pair(1ULL << 13, "VK_SHADER_STAGE_CALLABLE_BIT_KHR"),
2908 std::make_pair(1ULL << 6, "VK_SHADER_STAGE_TASK_BIT_NV"),
2909 std::make_pair(1ULL << 7, "VK_SHADER_STAGE_MESH_BIT_NV"),
2910 std::make_pair(1ULL << 14, "VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI"),
2911 };
print_VkShaderStageFlagBits(VkShaderStageFlagBits obj,const std::string & str,bool commaNeeded=true)2912 static void print_VkShaderStageFlagBits(VkShaderStageFlagBits obj, const std::string& str, bool commaNeeded=true) {
2913 PRINT_SPACE
2914 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2915 if (commaNeeded)
2916 _OUT << "\"" << VkShaderStageFlagBits_map[obj] << "\"," << std::endl;
2917 else
2918 _OUT << "\"" << VkShaderStageFlagBits_map[obj] << "\"" << std::endl;
2919 }
print_VkShaderStageFlagBits(const VkShaderStageFlagBits * obj,const std::string & str,bool commaNeeded=true)2920 static void print_VkShaderStageFlagBits(const VkShaderStageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2921 PRINT_SPACE
2922 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2923 if (commaNeeded)
2924 _OUT << "\"" << VkShaderStageFlagBits_map[*obj] << "\"," << std::endl;
2925 else
2926 _OUT << "\"" << VkShaderStageFlagBits_map[*obj] << "\"" << std::endl;
2927 }
2928
2929 static std::map<deUint64, std::string> VkCullModeFlagBits_map = {
2930 std::make_pair(0, "VK_CULL_MODE_NONE"),
2931 std::make_pair(1ULL << 0, "VK_CULL_MODE_FRONT_BIT"),
2932 std::make_pair(1ULL << 1, "VK_CULL_MODE_BACK_BIT"),
2933 std::make_pair(0x00000003, "VK_CULL_MODE_FRONT_AND_BACK"),
2934 };
print_VkCullModeFlagBits(VkCullModeFlagBits obj,const std::string & str,bool commaNeeded=true)2935 static void print_VkCullModeFlagBits(VkCullModeFlagBits obj, const std::string& str, bool commaNeeded=true) {
2936 PRINT_SPACE
2937 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2938 if (commaNeeded)
2939 _OUT << "\"" << VkCullModeFlagBits_map[obj] << "\"," << std::endl;
2940 else
2941 _OUT << "\"" << VkCullModeFlagBits_map[obj] << "\"" << std::endl;
2942 }
print_VkCullModeFlagBits(const VkCullModeFlagBits * obj,const std::string & str,bool commaNeeded=true)2943 static void print_VkCullModeFlagBits(const VkCullModeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2944 PRINT_SPACE
2945 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2946 if (commaNeeded)
2947 _OUT << "\"" << VkCullModeFlagBits_map[*obj] << "\"," << std::endl;
2948 else
2949 _OUT << "\"" << VkCullModeFlagBits_map[*obj] << "\"" << std::endl;
2950 }
2951
2952 static std::map<deUint64, std::string> VkDynamicState_map = {
2953 std::make_pair(0, "VK_DYNAMIC_STATE_VIEWPORT"),
2954 std::make_pair(1, "VK_DYNAMIC_STATE_SCISSOR"),
2955 std::make_pair(2, "VK_DYNAMIC_STATE_LINE_WIDTH"),
2956 std::make_pair(3, "VK_DYNAMIC_STATE_DEPTH_BIAS"),
2957 std::make_pair(4, "VK_DYNAMIC_STATE_BLEND_CONSTANTS"),
2958 std::make_pair(5, "VK_DYNAMIC_STATE_DEPTH_BOUNDS"),
2959 std::make_pair(6, "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK"),
2960 std::make_pair(7, "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK"),
2961 std::make_pair(8, "VK_DYNAMIC_STATE_STENCIL_REFERENCE"),
2962 std::make_pair(1000087000, "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV"),
2963 std::make_pair(1000099000, "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT"),
2964 std::make_pair(1000143000, "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT"),
2965 std::make_pair(1000347000, "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR"),
2966 std::make_pair(1000164004, "VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV"),
2967 std::make_pair(1000164006, "VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV"),
2968 std::make_pair(1000205001, "VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV"),
2969 std::make_pair(1000226000, "VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR"),
2970 std::make_pair(1000259000, "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT"),
2971 std::make_pair(1000267000, "VK_DYNAMIC_STATE_CULL_MODE_EXT"),
2972 std::make_pair(1000267001, "VK_DYNAMIC_STATE_FRONT_FACE_EXT"),
2973 std::make_pair(1000267002, "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT"),
2974 std::make_pair(1000267003, "VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT"),
2975 std::make_pair(1000267004, "VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT"),
2976 std::make_pair(1000267005, "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT"),
2977 std::make_pair(1000267006, "VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT"),
2978 std::make_pair(1000267007, "VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT"),
2979 std::make_pair(1000267008, "VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT"),
2980 std::make_pair(1000267009, "VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT"),
2981 std::make_pair(1000267010, "VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT"),
2982 std::make_pair(1000267011, "VK_DYNAMIC_STATE_STENCIL_OP_EXT"),
2983 std::make_pair(1000352000, "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT"),
2984 std::make_pair(1000377000, "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT"),
2985 std::make_pair(1000377001, "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT"),
2986 std::make_pair(1000377002, "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT"),
2987 std::make_pair(1000377003, "VK_DYNAMIC_STATE_LOGIC_OP_EXT"),
2988 std::make_pair(1000377004, "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT"),
2989 std::make_pair(1000381000, "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT"),
2990 };
print_VkDynamicState(VkDynamicState obj,const std::string & str,bool commaNeeded=true)2991 static void print_VkDynamicState(VkDynamicState obj, const std::string& str, bool commaNeeded=true) {
2992 PRINT_SPACE
2993 if (str != "") _OUT << "\"" << str << "\"" << " : ";
2994 if (commaNeeded)
2995 _OUT << "\"" << VkDynamicState_map[obj] << "\"," << std::endl;
2996 else
2997 _OUT << "\"" << VkDynamicState_map[obj] << "\"" << std::endl;
2998 }
print_VkDynamicState(const VkDynamicState * obj,const std::string & str,bool commaNeeded=true)2999 static void print_VkDynamicState(const VkDynamicState * obj, const std::string& str, bool commaNeeded=true) {
3000 PRINT_SPACE
3001 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3002 if (commaNeeded)
3003 _OUT << "\"" << VkDynamicState_map[*obj] << "\"," << std::endl;
3004 else
3005 _OUT << "\"" << VkDynamicState_map[*obj] << "\"" << std::endl;
3006 }
3007
3008 static std::map<deUint64, std::string> VkFrontFace_map = {
3009 std::make_pair(0, "VK_FRONT_FACE_COUNTER_CLOCKWISE"),
3010 std::make_pair(1, "VK_FRONT_FACE_CLOCKWISE"),
3011 };
print_VkFrontFace(VkFrontFace obj,const std::string & str,bool commaNeeded=true)3012 static void print_VkFrontFace(VkFrontFace obj, const std::string& str, bool commaNeeded=true) {
3013 PRINT_SPACE
3014 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3015 if (commaNeeded)
3016 _OUT << "\"" << VkFrontFace_map[obj] << "\"," << std::endl;
3017 else
3018 _OUT << "\"" << VkFrontFace_map[obj] << "\"" << std::endl;
3019 }
print_VkFrontFace(const VkFrontFace * obj,const std::string & str,bool commaNeeded=true)3020 static void print_VkFrontFace(const VkFrontFace * obj, const std::string& str, bool commaNeeded=true) {
3021 PRINT_SPACE
3022 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3023 if (commaNeeded)
3024 _OUT << "\"" << VkFrontFace_map[*obj] << "\"," << std::endl;
3025 else
3026 _OUT << "\"" << VkFrontFace_map[*obj] << "\"" << std::endl;
3027 }
3028
3029 static std::map<deUint64, std::string> VkVertexInputRate_map = {
3030 std::make_pair(0, "VK_VERTEX_INPUT_RATE_VERTEX"),
3031 std::make_pair(1, "VK_VERTEX_INPUT_RATE_INSTANCE"),
3032 };
print_VkVertexInputRate(VkVertexInputRate obj,const std::string & str,bool commaNeeded=true)3033 static void print_VkVertexInputRate(VkVertexInputRate obj, const std::string& str, bool commaNeeded=true) {
3034 PRINT_SPACE
3035 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3036 if (commaNeeded)
3037 _OUT << "\"" << VkVertexInputRate_map[obj] << "\"," << std::endl;
3038 else
3039 _OUT << "\"" << VkVertexInputRate_map[obj] << "\"" << std::endl;
3040 }
print_VkVertexInputRate(const VkVertexInputRate * obj,const std::string & str,bool commaNeeded=true)3041 static void print_VkVertexInputRate(const VkVertexInputRate * obj, const std::string& str, bool commaNeeded=true) {
3042 PRINT_SPACE
3043 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3044 if (commaNeeded)
3045 _OUT << "\"" << VkVertexInputRate_map[*obj] << "\"," << std::endl;
3046 else
3047 _OUT << "\"" << VkVertexInputRate_map[*obj] << "\"" << std::endl;
3048 }
3049
3050 static std::map<deUint64, std::string> VkPrimitiveTopology_map = {
3051 std::make_pair(0, "VK_PRIMITIVE_TOPOLOGY_POINT_LIST"),
3052 std::make_pair(1, "VK_PRIMITIVE_TOPOLOGY_LINE_LIST"),
3053 std::make_pair(2, "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP"),
3054 std::make_pair(3, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST"),
3055 std::make_pair(4, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP"),
3056 std::make_pair(5, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN"),
3057 std::make_pair(6, "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY"),
3058 std::make_pair(7, "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY"),
3059 std::make_pair(8, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY"),
3060 std::make_pair(9, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY"),
3061 std::make_pair(10, "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST"),
3062 };
print_VkPrimitiveTopology(VkPrimitiveTopology obj,const std::string & str,bool commaNeeded=true)3063 static void print_VkPrimitiveTopology(VkPrimitiveTopology obj, const std::string& str, bool commaNeeded=true) {
3064 PRINT_SPACE
3065 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3066 if (commaNeeded)
3067 _OUT << "\"" << VkPrimitiveTopology_map[obj] << "\"," << std::endl;
3068 else
3069 _OUT << "\"" << VkPrimitiveTopology_map[obj] << "\"" << std::endl;
3070 }
print_VkPrimitiveTopology(const VkPrimitiveTopology * obj,const std::string & str,bool commaNeeded=true)3071 static void print_VkPrimitiveTopology(const VkPrimitiveTopology * obj, const std::string& str, bool commaNeeded=true) {
3072 PRINT_SPACE
3073 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3074 if (commaNeeded)
3075 _OUT << "\"" << VkPrimitiveTopology_map[*obj] << "\"," << std::endl;
3076 else
3077 _OUT << "\"" << VkPrimitiveTopology_map[*obj] << "\"" << std::endl;
3078 }
3079
3080 static std::map<deUint64, std::string> VkPolygonMode_map = {
3081 std::make_pair(0, "VK_POLYGON_MODE_FILL"),
3082 std::make_pair(1, "VK_POLYGON_MODE_LINE"),
3083 std::make_pair(2, "VK_POLYGON_MODE_POINT"),
3084 std::make_pair(1000153000, "VK_POLYGON_MODE_FILL_RECTANGLE_NV"),
3085 };
print_VkPolygonMode(VkPolygonMode obj,const std::string & str,bool commaNeeded=true)3086 static void print_VkPolygonMode(VkPolygonMode obj, const std::string& str, bool commaNeeded=true) {
3087 PRINT_SPACE
3088 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3089 if (commaNeeded)
3090 _OUT << "\"" << VkPolygonMode_map[obj] << "\"," << std::endl;
3091 else
3092 _OUT << "\"" << VkPolygonMode_map[obj] << "\"" << std::endl;
3093 }
print_VkPolygonMode(const VkPolygonMode * obj,const std::string & str,bool commaNeeded=true)3094 static void print_VkPolygonMode(const VkPolygonMode * obj, const std::string& str, bool commaNeeded=true) {
3095 PRINT_SPACE
3096 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3097 if (commaNeeded)
3098 _OUT << "\"" << VkPolygonMode_map[*obj] << "\"," << std::endl;
3099 else
3100 _OUT << "\"" << VkPolygonMode_map[*obj] << "\"" << std::endl;
3101 }
3102
3103 static std::map<deUint64, std::string> VkStencilOp_map = {
3104 std::make_pair(0, "VK_STENCIL_OP_KEEP"),
3105 std::make_pair(1, "VK_STENCIL_OP_ZERO"),
3106 std::make_pair(2, "VK_STENCIL_OP_REPLACE"),
3107 std::make_pair(3, "VK_STENCIL_OP_INCREMENT_AND_CLAMP"),
3108 std::make_pair(4, "VK_STENCIL_OP_DECREMENT_AND_CLAMP"),
3109 std::make_pair(5, "VK_STENCIL_OP_INVERT"),
3110 std::make_pair(6, "VK_STENCIL_OP_INCREMENT_AND_WRAP"),
3111 std::make_pair(7, "VK_STENCIL_OP_DECREMENT_AND_WRAP"),
3112 };
print_VkStencilOp(VkStencilOp obj,const std::string & str,bool commaNeeded=true)3113 static void print_VkStencilOp(VkStencilOp obj, const std::string& str, bool commaNeeded=true) {
3114 PRINT_SPACE
3115 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3116 if (commaNeeded)
3117 _OUT << "\"" << VkStencilOp_map[obj] << "\"," << std::endl;
3118 else
3119 _OUT << "\"" << VkStencilOp_map[obj] << "\"" << std::endl;
3120 }
print_VkStencilOp(const VkStencilOp * obj,const std::string & str,bool commaNeeded=true)3121 static void print_VkStencilOp(const VkStencilOp * obj, const std::string& str, bool commaNeeded=true) {
3122 PRINT_SPACE
3123 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3124 if (commaNeeded)
3125 _OUT << "\"" << VkStencilOp_map[*obj] << "\"," << std::endl;
3126 else
3127 _OUT << "\"" << VkStencilOp_map[*obj] << "\"" << std::endl;
3128 }
3129
3130 static std::map<deUint64, std::string> VkLogicOp_map = {
3131 std::make_pair(0, "VK_LOGIC_OP_CLEAR"),
3132 std::make_pair(1, "VK_LOGIC_OP_AND"),
3133 std::make_pair(2, "VK_LOGIC_OP_AND_REVERSE"),
3134 std::make_pair(3, "VK_LOGIC_OP_COPY"),
3135 std::make_pair(4, "VK_LOGIC_OP_AND_INVERTED"),
3136 std::make_pair(5, "VK_LOGIC_OP_NO_OP"),
3137 std::make_pair(6, "VK_LOGIC_OP_XOR"),
3138 std::make_pair(7, "VK_LOGIC_OP_OR"),
3139 std::make_pair(8, "VK_LOGIC_OP_NOR"),
3140 std::make_pair(9, "VK_LOGIC_OP_EQUIVALENT"),
3141 std::make_pair(10, "VK_LOGIC_OP_INVERT"),
3142 std::make_pair(11, "VK_LOGIC_OP_OR_REVERSE"),
3143 std::make_pair(12, "VK_LOGIC_OP_COPY_INVERTED"),
3144 std::make_pair(13, "VK_LOGIC_OP_OR_INVERTED"),
3145 std::make_pair(14, "VK_LOGIC_OP_NAND"),
3146 std::make_pair(15, "VK_LOGIC_OP_SET"),
3147 };
print_VkLogicOp(VkLogicOp obj,const std::string & str,bool commaNeeded=true)3148 static void print_VkLogicOp(VkLogicOp obj, const std::string& str, bool commaNeeded=true) {
3149 PRINT_SPACE
3150 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3151 if (commaNeeded)
3152 _OUT << "\"" << VkLogicOp_map[obj] << "\"," << std::endl;
3153 else
3154 _OUT << "\"" << VkLogicOp_map[obj] << "\"" << std::endl;
3155 }
print_VkLogicOp(const VkLogicOp * obj,const std::string & str,bool commaNeeded=true)3156 static void print_VkLogicOp(const VkLogicOp * obj, const std::string& str, bool commaNeeded=true) {
3157 PRINT_SPACE
3158 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3159 if (commaNeeded)
3160 _OUT << "\"" << VkLogicOp_map[*obj] << "\"," << std::endl;
3161 else
3162 _OUT << "\"" << VkLogicOp_map[*obj] << "\"" << std::endl;
3163 }
3164
3165 static std::map<deUint64, std::string> VkBorderColor_map = {
3166 std::make_pair(0, "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK"),
3167 std::make_pair(1, "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK"),
3168 std::make_pair(2, "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK"),
3169 std::make_pair(3, "VK_BORDER_COLOR_INT_OPAQUE_BLACK"),
3170 std::make_pair(4, "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE"),
3171 std::make_pair(5, "VK_BORDER_COLOR_INT_OPAQUE_WHITE"),
3172 std::make_pair(1000287003, "VK_BORDER_COLOR_FLOAT_CUSTOM_EXT"),
3173 std::make_pair(1000287004, "VK_BORDER_COLOR_INT_CUSTOM_EXT"),
3174 };
print_VkBorderColor(VkBorderColor obj,const std::string & str,bool commaNeeded=true)3175 static void print_VkBorderColor(VkBorderColor obj, const std::string& str, bool commaNeeded=true) {
3176 PRINT_SPACE
3177 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3178 if (commaNeeded)
3179 _OUT << "\"" << VkBorderColor_map[obj] << "\"," << std::endl;
3180 else
3181 _OUT << "\"" << VkBorderColor_map[obj] << "\"" << std::endl;
3182 }
print_VkBorderColor(const VkBorderColor * obj,const std::string & str,bool commaNeeded=true)3183 static void print_VkBorderColor(const VkBorderColor * obj, const std::string& str, bool commaNeeded=true) {
3184 PRINT_SPACE
3185 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3186 if (commaNeeded)
3187 _OUT << "\"" << VkBorderColor_map[*obj] << "\"," << std::endl;
3188 else
3189 _OUT << "\"" << VkBorderColor_map[*obj] << "\"" << std::endl;
3190 }
3191
3192 static std::map<deUint64, std::string> VkFilter_map = {
3193 std::make_pair(0, "VK_FILTER_NEAREST"),
3194 std::make_pair(1, "VK_FILTER_LINEAR"),
3195 std::make_pair(1000015000, "VK_FILTER_CUBIC_IMG"),
3196 };
print_VkFilter(VkFilter obj,const std::string & str,bool commaNeeded=true)3197 static void print_VkFilter(VkFilter obj, const std::string& str, bool commaNeeded=true) {
3198 PRINT_SPACE
3199 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3200 if (commaNeeded)
3201 _OUT << "\"" << VkFilter_map[obj] << "\"," << std::endl;
3202 else
3203 _OUT << "\"" << VkFilter_map[obj] << "\"" << std::endl;
3204 }
print_VkFilter(const VkFilter * obj,const std::string & str,bool commaNeeded=true)3205 static void print_VkFilter(const VkFilter * obj, const std::string& str, bool commaNeeded=true) {
3206 PRINT_SPACE
3207 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3208 if (commaNeeded)
3209 _OUT << "\"" << VkFilter_map[*obj] << "\"," << std::endl;
3210 else
3211 _OUT << "\"" << VkFilter_map[*obj] << "\"" << std::endl;
3212 }
3213
3214 static std::map<deUint64, std::string> VkSamplerAddressMode_map = {
3215 std::make_pair(0, "VK_SAMPLER_ADDRESS_MODE_REPEAT"),
3216 std::make_pair(1, "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT"),
3217 std::make_pair(2, "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE"),
3218 std::make_pair(3, "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER"),
3219 std::make_pair(4, "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"),
3220 std::make_pair(4, "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"),
3221 };
print_VkSamplerAddressMode(VkSamplerAddressMode obj,const std::string & str,bool commaNeeded=true)3222 static void print_VkSamplerAddressMode(VkSamplerAddressMode obj, const std::string& str, bool commaNeeded=true) {
3223 PRINT_SPACE
3224 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3225 if (commaNeeded)
3226 _OUT << "\"" << VkSamplerAddressMode_map[obj] << "\"," << std::endl;
3227 else
3228 _OUT << "\"" << VkSamplerAddressMode_map[obj] << "\"" << std::endl;
3229 }
print_VkSamplerAddressMode(const VkSamplerAddressMode * obj,const std::string & str,bool commaNeeded=true)3230 static void print_VkSamplerAddressMode(const VkSamplerAddressMode * obj, const std::string& str, bool commaNeeded=true) {
3231 PRINT_SPACE
3232 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3233 if (commaNeeded)
3234 _OUT << "\"" << VkSamplerAddressMode_map[*obj] << "\"," << std::endl;
3235 else
3236 _OUT << "\"" << VkSamplerAddressMode_map[*obj] << "\"" << std::endl;
3237 }
3238
3239 static std::map<deUint64, std::string> VkSamplerCreateFlagBits_map = {
3240 std::make_pair(1ULL << 0, "VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT"),
3241 std::make_pair(1ULL << 1, "VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT"),
3242 std::make_pair(1ULL << 3, "VK_SAMPLER_CREATE_RESERVED_3_BIT_AMD"),
3243 std::make_pair(1ULL << 2, "VK_SAMPLER_CREATE_RESERVED_2_BIT_EXT"),
3244 };
print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3245 static void print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3246 PRINT_SPACE
3247 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3248 if (commaNeeded)
3249 _OUT << "\"" << VkSamplerCreateFlagBits_map[obj] << "\"," << std::endl;
3250 else
3251 _OUT << "\"" << VkSamplerCreateFlagBits_map[obj] << "\"" << std::endl;
3252 }
print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3253 static void print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3254 PRINT_SPACE
3255 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3256 if (commaNeeded)
3257 _OUT << "\"" << VkSamplerCreateFlagBits_map[*obj] << "\"," << std::endl;
3258 else
3259 _OUT << "\"" << VkSamplerCreateFlagBits_map[*obj] << "\"" << std::endl;
3260 }
3261
3262 static std::map<deUint64, std::string> VkSamplerMipmapMode_map = {
3263 std::make_pair(0, "VK_SAMPLER_MIPMAP_MODE_NEAREST"),
3264 std::make_pair(1, "VK_SAMPLER_MIPMAP_MODE_LINEAR"),
3265 };
print_VkSamplerMipmapMode(VkSamplerMipmapMode obj,const std::string & str,bool commaNeeded=true)3266 static void print_VkSamplerMipmapMode(VkSamplerMipmapMode obj, const std::string& str, bool commaNeeded=true) {
3267 PRINT_SPACE
3268 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3269 if (commaNeeded)
3270 _OUT << "\"" << VkSamplerMipmapMode_map[obj] << "\"," << std::endl;
3271 else
3272 _OUT << "\"" << VkSamplerMipmapMode_map[obj] << "\"" << std::endl;
3273 }
print_VkSamplerMipmapMode(const VkSamplerMipmapMode * obj,const std::string & str,bool commaNeeded=true)3274 static void print_VkSamplerMipmapMode(const VkSamplerMipmapMode * obj, const std::string& str, bool commaNeeded=true) {
3275 PRINT_SPACE
3276 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3277 if (commaNeeded)
3278 _OUT << "\"" << VkSamplerMipmapMode_map[*obj] << "\"," << std::endl;
3279 else
3280 _OUT << "\"" << VkSamplerMipmapMode_map[*obj] << "\"" << std::endl;
3281 }
3282
3283 static std::map<deUint64, std::string> VkDescriptorPoolCreateFlagBits_map = {
3284 std::make_pair(1ULL << 0, "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT"),
3285 std::make_pair(1ULL << 1, "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT"),
3286 std::make_pair(1ULL << 2, "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE"),
3287 };
print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3288 static void print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3289 PRINT_SPACE
3290 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3291 if (commaNeeded)
3292 _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[obj] << "\"," << std::endl;
3293 else
3294 _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[obj] << "\"" << std::endl;
3295 }
print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3296 static void print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3297 PRINT_SPACE
3298 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3299 if (commaNeeded)
3300 _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[*obj] << "\"," << std::endl;
3301 else
3302 _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[*obj] << "\"" << std::endl;
3303 }
3304
3305 static std::map<deUint64, std::string> VkDescriptorType_map = {
3306 std::make_pair(0, "VK_DESCRIPTOR_TYPE_SAMPLER"),
3307 std::make_pair(1, "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER"),
3308 std::make_pair(2, "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE"),
3309 std::make_pair(3, "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE"),
3310 std::make_pair(4, "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER"),
3311 std::make_pair(5, "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER"),
3312 std::make_pair(6, "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER"),
3313 std::make_pair(7, "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER"),
3314 std::make_pair(8, "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC"),
3315 std::make_pair(9, "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC"),
3316 std::make_pair(10, "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT"),
3317 std::make_pair(1000138000, "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT"),
3318 std::make_pair(1000150000, "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR"),
3319 std::make_pair(1000165000, "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV"),
3320 std::make_pair(1000351000, "VK_DESCRIPTOR_TYPE_MUTABLE_VALVE"),
3321 };
print_VkDescriptorType(VkDescriptorType obj,const std::string & str,bool commaNeeded=true)3322 static void print_VkDescriptorType(VkDescriptorType obj, const std::string& str, bool commaNeeded=true) {
3323 PRINT_SPACE
3324 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3325 if (commaNeeded)
3326 _OUT << "\"" << VkDescriptorType_map[obj] << "\"," << std::endl;
3327 else
3328 _OUT << "\"" << VkDescriptorType_map[obj] << "\"" << std::endl;
3329 }
print_VkDescriptorType(const VkDescriptorType * obj,const std::string & str,bool commaNeeded=true)3330 static void print_VkDescriptorType(const VkDescriptorType * obj, const std::string& str, bool commaNeeded=true) {
3331 PRINT_SPACE
3332 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3333 if (commaNeeded)
3334 _OUT << "\"" << VkDescriptorType_map[*obj] << "\"," << std::endl;
3335 else
3336 _OUT << "\"" << VkDescriptorType_map[*obj] << "\"" << std::endl;
3337 }
3338
3339 static std::map<deUint64, std::string> VkDescriptorSetLayoutCreateFlagBits_map = {
3340 std::make_pair(1ULL << 1, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT"),
3341 std::make_pair(1ULL << 0, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR"),
3342 std::make_pair(1ULL << 4, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_4_BIT_AMD"),
3343 std::make_pair(1ULL << 3, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_3_BIT_AMD"),
3344 std::make_pair(1ULL << 2, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE"),
3345 };
print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3346 static void print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3347 PRINT_SPACE
3348 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3349 if (commaNeeded)
3350 _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[obj] << "\"," << std::endl;
3351 else
3352 _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[obj] << "\"" << std::endl;
3353 }
print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3354 static void print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3355 PRINT_SPACE
3356 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3357 if (commaNeeded)
3358 _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[*obj] << "\"," << std::endl;
3359 else
3360 _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[*obj] << "\"" << std::endl;
3361 }
3362
3363 static std::map<deUint64, std::string> VkAttachmentDescriptionFlagBits_map = {
3364 std::make_pair(1ULL << 0, "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT"),
3365 };
print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj,const std::string & str,bool commaNeeded=true)3366 static void print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj, const std::string& str, bool commaNeeded=true) {
3367 PRINT_SPACE
3368 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3369 if (commaNeeded)
3370 _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[obj] << "\"," << std::endl;
3371 else
3372 _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[obj] << "\"" << std::endl;
3373 }
print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits * obj,const std::string & str,bool commaNeeded=true)3374 static void print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3375 PRINT_SPACE
3376 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3377 if (commaNeeded)
3378 _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[*obj] << "\"," << std::endl;
3379 else
3380 _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[*obj] << "\"" << std::endl;
3381 }
3382
3383 static std::map<deUint64, std::string> VkAttachmentLoadOp_map = {
3384 std::make_pair(0, "VK_ATTACHMENT_LOAD_OP_LOAD"),
3385 std::make_pair(1, "VK_ATTACHMENT_LOAD_OP_CLEAR"),
3386 std::make_pair(2, "VK_ATTACHMENT_LOAD_OP_DONT_CARE"),
3387 std::make_pair(1000400000, "VK_ATTACHMENT_LOAD_OP_NONE_EXT"),
3388 };
print_VkAttachmentLoadOp(VkAttachmentLoadOp obj,const std::string & str,bool commaNeeded=true)3389 static void print_VkAttachmentLoadOp(VkAttachmentLoadOp obj, const std::string& str, bool commaNeeded=true) {
3390 PRINT_SPACE
3391 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3392 if (commaNeeded)
3393 _OUT << "\"" << VkAttachmentLoadOp_map[obj] << "\"," << std::endl;
3394 else
3395 _OUT << "\"" << VkAttachmentLoadOp_map[obj] << "\"" << std::endl;
3396 }
print_VkAttachmentLoadOp(const VkAttachmentLoadOp * obj,const std::string & str,bool commaNeeded=true)3397 static void print_VkAttachmentLoadOp(const VkAttachmentLoadOp * obj, const std::string& str, bool commaNeeded=true) {
3398 PRINT_SPACE
3399 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3400 if (commaNeeded)
3401 _OUT << "\"" << VkAttachmentLoadOp_map[*obj] << "\"," << std::endl;
3402 else
3403 _OUT << "\"" << VkAttachmentLoadOp_map[*obj] << "\"" << std::endl;
3404 }
3405
3406 static std::map<deUint64, std::string> VkAttachmentStoreOp_map = {
3407 std::make_pair(0, "VK_ATTACHMENT_STORE_OP_STORE"),
3408 std::make_pair(1, "VK_ATTACHMENT_STORE_OP_DONT_CARE"),
3409 std::make_pair(1000301000, "VK_ATTACHMENT_STORE_OP_NONE_KHR"),
3410 };
print_VkAttachmentStoreOp(VkAttachmentStoreOp obj,const std::string & str,bool commaNeeded=true)3411 static void print_VkAttachmentStoreOp(VkAttachmentStoreOp obj, const std::string& str, bool commaNeeded=true) {
3412 PRINT_SPACE
3413 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3414 if (commaNeeded)
3415 _OUT << "\"" << VkAttachmentStoreOp_map[obj] << "\"," << std::endl;
3416 else
3417 _OUT << "\"" << VkAttachmentStoreOp_map[obj] << "\"" << std::endl;
3418 }
print_VkAttachmentStoreOp(const VkAttachmentStoreOp * obj,const std::string & str,bool commaNeeded=true)3419 static void print_VkAttachmentStoreOp(const VkAttachmentStoreOp * obj, const std::string& str, bool commaNeeded=true) {
3420 PRINT_SPACE
3421 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3422 if (commaNeeded)
3423 _OUT << "\"" << VkAttachmentStoreOp_map[*obj] << "\"," << std::endl;
3424 else
3425 _OUT << "\"" << VkAttachmentStoreOp_map[*obj] << "\"" << std::endl;
3426 }
3427
3428 static std::map<deUint64, std::string> VkDependencyFlagBits_map = {
3429 std::make_pair(1ULL << 0, "VK_DEPENDENCY_BY_REGION_BIT"),
3430 std::make_pair(1ULL << 2, "VK_DEPENDENCY_DEVICE_GROUP_BIT"),
3431 std::make_pair(1ULL << 1, "VK_DEPENDENCY_VIEW_LOCAL_BIT"),
3432 };
print_VkDependencyFlagBits(VkDependencyFlagBits obj,const std::string & str,bool commaNeeded=true)3433 static void print_VkDependencyFlagBits(VkDependencyFlagBits obj, const std::string& str, bool commaNeeded=true) {
3434 PRINT_SPACE
3435 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3436 if (commaNeeded)
3437 _OUT << "\"" << VkDependencyFlagBits_map[obj] << "\"," << std::endl;
3438 else
3439 _OUT << "\"" << VkDependencyFlagBits_map[obj] << "\"" << std::endl;
3440 }
print_VkDependencyFlagBits(const VkDependencyFlagBits * obj,const std::string & str,bool commaNeeded=true)3441 static void print_VkDependencyFlagBits(const VkDependencyFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3442 PRINT_SPACE
3443 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3444 if (commaNeeded)
3445 _OUT << "\"" << VkDependencyFlagBits_map[*obj] << "\"," << std::endl;
3446 else
3447 _OUT << "\"" << VkDependencyFlagBits_map[*obj] << "\"" << std::endl;
3448 }
3449
3450 static std::map<deUint64, std::string> VkFramebufferCreateFlagBits_map = {
3451 std::make_pair(1ULL << 0, "VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT"),
3452 };
print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3453 static void print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3454 PRINT_SPACE
3455 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3456 if (commaNeeded)
3457 _OUT << "\"" << VkFramebufferCreateFlagBits_map[obj] << "\"," << std::endl;
3458 else
3459 _OUT << "\"" << VkFramebufferCreateFlagBits_map[obj] << "\"" << std::endl;
3460 }
print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3461 static void print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3462 PRINT_SPACE
3463 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3464 if (commaNeeded)
3465 _OUT << "\"" << VkFramebufferCreateFlagBits_map[*obj] << "\"," << std::endl;
3466 else
3467 _OUT << "\"" << VkFramebufferCreateFlagBits_map[*obj] << "\"" << std::endl;
3468 }
3469
3470 static std::map<deUint64, std::string> VkPipelineBindPoint_map = {
3471 std::make_pair(0, "VK_PIPELINE_BIND_POINT_GRAPHICS"),
3472 std::make_pair(1, "VK_PIPELINE_BIND_POINT_COMPUTE"),
3473 std::make_pair(1000165000, "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR"),
3474 std::make_pair(1000369003, "VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI"),
3475 };
print_VkPipelineBindPoint(VkPipelineBindPoint obj,const std::string & str,bool commaNeeded=true)3476 static void print_VkPipelineBindPoint(VkPipelineBindPoint obj, const std::string& str, bool commaNeeded=true) {
3477 PRINT_SPACE
3478 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3479 if (commaNeeded)
3480 _OUT << "\"" << VkPipelineBindPoint_map[obj] << "\"," << std::endl;
3481 else
3482 _OUT << "\"" << VkPipelineBindPoint_map[obj] << "\"" << std::endl;
3483 }
print_VkPipelineBindPoint(const VkPipelineBindPoint * obj,const std::string & str,bool commaNeeded=true)3484 static void print_VkPipelineBindPoint(const VkPipelineBindPoint * obj, const std::string& str, bool commaNeeded=true) {
3485 PRINT_SPACE
3486 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3487 if (commaNeeded)
3488 _OUT << "\"" << VkPipelineBindPoint_map[*obj] << "\"," << std::endl;
3489 else
3490 _OUT << "\"" << VkPipelineBindPoint_map[*obj] << "\"" << std::endl;
3491 }
3492
3493 static std::map<deUint64, std::string> VkRenderPassCreateFlagBits_map = {
3494 std::make_pair(1ULL << 0, "VK_RENDER_PASS_CREATE_RESERVED_0_BIT_KHR"),
3495 std::make_pair(1ULL << 1, "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM"),
3496 };
print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3497 static void print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3498 PRINT_SPACE
3499 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3500 if (commaNeeded)
3501 _OUT << "\"" << VkRenderPassCreateFlagBits_map[obj] << "\"," << std::endl;
3502 else
3503 _OUT << "\"" << VkRenderPassCreateFlagBits_map[obj] << "\"" << std::endl;
3504 }
print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3505 static void print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3506 PRINT_SPACE
3507 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3508 if (commaNeeded)
3509 _OUT << "\"" << VkRenderPassCreateFlagBits_map[*obj] << "\"," << std::endl;
3510 else
3511 _OUT << "\"" << VkRenderPassCreateFlagBits_map[*obj] << "\"" << std::endl;
3512 }
3513
3514 static std::map<deUint64, std::string> VkSubpassDescriptionFlagBits_map = {
3515 std::make_pair(1ULL << 0, "VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX"),
3516 std::make_pair(1ULL << 1, "VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX"),
3517 std::make_pair(1ULL << 2, "VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM"),
3518 std::make_pair(1ULL << 3, "VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM"),
3519 std::make_pair(1ULL << 4, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM"),
3520 std::make_pair(1ULL << 5, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM"),
3521 std::make_pair(1ULL << 6, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM"),
3522 };
print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj,const std::string & str,bool commaNeeded=true)3523 static void print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj, const std::string& str, bool commaNeeded=true) {
3524 PRINT_SPACE
3525 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3526 if (commaNeeded)
3527 _OUT << "\"" << VkSubpassDescriptionFlagBits_map[obj] << "\"," << std::endl;
3528 else
3529 _OUT << "\"" << VkSubpassDescriptionFlagBits_map[obj] << "\"" << std::endl;
3530 }
print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits * obj,const std::string & str,bool commaNeeded=true)3531 static void print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3532 PRINT_SPACE
3533 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3534 if (commaNeeded)
3535 _OUT << "\"" << VkSubpassDescriptionFlagBits_map[*obj] << "\"," << std::endl;
3536 else
3537 _OUT << "\"" << VkSubpassDescriptionFlagBits_map[*obj] << "\"" << std::endl;
3538 }
3539
3540 static std::map<deUint64, std::string> VkCommandPoolCreateFlagBits_map = {
3541 std::make_pair(1ULL << 0, "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT"),
3542 std::make_pair(1ULL << 1, "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT"),
3543 std::make_pair(1ULL << 2, "VK_COMMAND_POOL_CREATE_PROTECTED_BIT"),
3544 };
print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3545 static void print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3546 PRINT_SPACE
3547 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3548 if (commaNeeded)
3549 _OUT << "\"" << VkCommandPoolCreateFlagBits_map[obj] << "\"," << std::endl;
3550 else
3551 _OUT << "\"" << VkCommandPoolCreateFlagBits_map[obj] << "\"" << std::endl;
3552 }
print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3553 static void print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3554 PRINT_SPACE
3555 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3556 if (commaNeeded)
3557 _OUT << "\"" << VkCommandPoolCreateFlagBits_map[*obj] << "\"," << std::endl;
3558 else
3559 _OUT << "\"" << VkCommandPoolCreateFlagBits_map[*obj] << "\"" << std::endl;
3560 }
3561
3562 static std::map<deUint64, std::string> VkCommandPoolResetFlagBits_map = {
3563 std::make_pair(1ULL << 1, "VK_COMMAND_POOL_RESET_RESERVED_1_BIT_COREAVI"),
3564 };
print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj,const std::string & str,bool commaNeeded=true)3565 static void print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj, const std::string& str, bool commaNeeded=true) {
3566 PRINT_SPACE
3567 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3568 if (commaNeeded)
3569 _OUT << "\"" << VkCommandPoolResetFlagBits_map[obj] << "\"," << std::endl;
3570 else
3571 _OUT << "\"" << VkCommandPoolResetFlagBits_map[obj] << "\"" << std::endl;
3572 }
print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits * obj,const std::string & str,bool commaNeeded=true)3573 static void print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3574 PRINT_SPACE
3575 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3576 if (commaNeeded)
3577 _OUT << "\"" << VkCommandPoolResetFlagBits_map[*obj] << "\"," << std::endl;
3578 else
3579 _OUT << "\"" << VkCommandPoolResetFlagBits_map[*obj] << "\"" << std::endl;
3580 }
3581
3582 static std::map<deUint64, std::string> VkCommandBufferLevel_map = {
3583 std::make_pair(0, "VK_COMMAND_BUFFER_LEVEL_PRIMARY"),
3584 std::make_pair(1, "VK_COMMAND_BUFFER_LEVEL_SECONDARY"),
3585 };
print_VkCommandBufferLevel(VkCommandBufferLevel obj,const std::string & str,bool commaNeeded=true)3586 static void print_VkCommandBufferLevel(VkCommandBufferLevel obj, const std::string& str, bool commaNeeded=true) {
3587 PRINT_SPACE
3588 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3589 if (commaNeeded)
3590 _OUT << "\"" << VkCommandBufferLevel_map[obj] << "\"," << std::endl;
3591 else
3592 _OUT << "\"" << VkCommandBufferLevel_map[obj] << "\"" << std::endl;
3593 }
print_VkCommandBufferLevel(const VkCommandBufferLevel * obj,const std::string & str,bool commaNeeded=true)3594 static void print_VkCommandBufferLevel(const VkCommandBufferLevel * obj, const std::string& str, bool commaNeeded=true) {
3595 PRINT_SPACE
3596 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3597 if (commaNeeded)
3598 _OUT << "\"" << VkCommandBufferLevel_map[*obj] << "\"," << std::endl;
3599 else
3600 _OUT << "\"" << VkCommandBufferLevel_map[*obj] << "\"" << std::endl;
3601 }
3602
3603 static std::map<deUint64, std::string> VkCommandBufferUsageFlagBits_map = {
3604 std::make_pair(1ULL << 0, "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT"),
3605 std::make_pair(1ULL << 1, "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT"),
3606 std::make_pair(1ULL << 2, "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT"),
3607 };
print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj,const std::string & str,bool commaNeeded=true)3608 static void print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
3609 PRINT_SPACE
3610 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3611 if (commaNeeded)
3612 _OUT << "\"" << VkCommandBufferUsageFlagBits_map[obj] << "\"," << std::endl;
3613 else
3614 _OUT << "\"" << VkCommandBufferUsageFlagBits_map[obj] << "\"" << std::endl;
3615 }
print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)3616 static void print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3617 PRINT_SPACE
3618 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3619 if (commaNeeded)
3620 _OUT << "\"" << VkCommandBufferUsageFlagBits_map[*obj] << "\"," << std::endl;
3621 else
3622 _OUT << "\"" << VkCommandBufferUsageFlagBits_map[*obj] << "\"" << std::endl;
3623 }
3624
3625 static std::map<deUint64, std::string> VkQueryControlFlagBits_map = {
3626 std::make_pair(1ULL << 0, "VK_QUERY_CONTROL_PRECISE_BIT"),
3627 };
print_VkQueryControlFlagBits(VkQueryControlFlagBits obj,const std::string & str,bool commaNeeded=true)3628 static void print_VkQueryControlFlagBits(VkQueryControlFlagBits obj, const std::string& str, bool commaNeeded=true) {
3629 PRINT_SPACE
3630 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3631 if (commaNeeded)
3632 _OUT << "\"" << VkQueryControlFlagBits_map[obj] << "\"," << std::endl;
3633 else
3634 _OUT << "\"" << VkQueryControlFlagBits_map[obj] << "\"" << std::endl;
3635 }
print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj,const std::string & str,bool commaNeeded=true)3636 static void print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3637 PRINT_SPACE
3638 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3639 if (commaNeeded)
3640 _OUT << "\"" << VkQueryControlFlagBits_map[*obj] << "\"," << std::endl;
3641 else
3642 _OUT << "\"" << VkQueryControlFlagBits_map[*obj] << "\"" << std::endl;
3643 }
3644
3645 static std::map<deUint64, std::string> VkCommandBufferResetFlagBits_map = {
3646 std::make_pair(1ULL << 0, "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT"),
3647 };
print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj,const std::string & str,bool commaNeeded=true)3648 static void print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj, const std::string& str, bool commaNeeded=true) {
3649 PRINT_SPACE
3650 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3651 if (commaNeeded)
3652 _OUT << "\"" << VkCommandBufferResetFlagBits_map[obj] << "\"," << std::endl;
3653 else
3654 _OUT << "\"" << VkCommandBufferResetFlagBits_map[obj] << "\"" << std::endl;
3655 }
print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits * obj,const std::string & str,bool commaNeeded=true)3656 static void print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3657 PRINT_SPACE
3658 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3659 if (commaNeeded)
3660 _OUT << "\"" << VkCommandBufferResetFlagBits_map[*obj] << "\"," << std::endl;
3661 else
3662 _OUT << "\"" << VkCommandBufferResetFlagBits_map[*obj] << "\"" << std::endl;
3663 }
3664
3665 static std::map<deUint64, std::string> VkIndexType_map = {
3666 std::make_pair(0, "VK_INDEX_TYPE_UINT16"),
3667 std::make_pair(1, "VK_INDEX_TYPE_UINT32"),
3668 std::make_pair(1000165000, "VK_INDEX_TYPE_NONE_KHR"),
3669 std::make_pair(1000265000, "VK_INDEX_TYPE_UINT8_EXT"),
3670 };
print_VkIndexType(VkIndexType obj,const std::string & str,bool commaNeeded=true)3671 static void print_VkIndexType(VkIndexType obj, const std::string& str, bool commaNeeded=true) {
3672 PRINT_SPACE
3673 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3674 if (commaNeeded)
3675 _OUT << "\"" << VkIndexType_map[obj] << "\"," << std::endl;
3676 else
3677 _OUT << "\"" << VkIndexType_map[obj] << "\"" << std::endl;
3678 }
print_VkIndexType(const VkIndexType * obj,const std::string & str,bool commaNeeded=true)3679 static void print_VkIndexType(const VkIndexType * obj, const std::string& str, bool commaNeeded=true) {
3680 PRINT_SPACE
3681 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3682 if (commaNeeded)
3683 _OUT << "\"" << VkIndexType_map[*obj] << "\"," << std::endl;
3684 else
3685 _OUT << "\"" << VkIndexType_map[*obj] << "\"" << std::endl;
3686 }
3687
3688 static std::map<deUint64, std::string> VkStencilFaceFlagBits_map = {
3689 std::make_pair(1ULL << 0, "VK_STENCIL_FACE_FRONT_BIT"),
3690 std::make_pair(1ULL << 1, "VK_STENCIL_FACE_BACK_BIT"),
3691 std::make_pair(0x00000003, "VK_STENCIL_FACE_FRONT_AND_BACK"),
3692 };
print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj,const std::string & str,bool commaNeeded=true)3693 static void print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj, const std::string& str, bool commaNeeded=true) {
3694 PRINT_SPACE
3695 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3696 if (commaNeeded)
3697 _OUT << "\"" << VkStencilFaceFlagBits_map[obj] << "\"," << std::endl;
3698 else
3699 _OUT << "\"" << VkStencilFaceFlagBits_map[obj] << "\"" << std::endl;
3700 }
print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits * obj,const std::string & str,bool commaNeeded=true)3701 static void print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3702 PRINT_SPACE
3703 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3704 if (commaNeeded)
3705 _OUT << "\"" << VkStencilFaceFlagBits_map[*obj] << "\"," << std::endl;
3706 else
3707 _OUT << "\"" << VkStencilFaceFlagBits_map[*obj] << "\"" << std::endl;
3708 }
3709
3710 static std::map<deUint64, std::string> VkSubpassContents_map = {
3711 std::make_pair(0, "VK_SUBPASS_CONTENTS_INLINE"),
3712 std::make_pair(1, "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS"),
3713 };
print_VkSubpassContents(VkSubpassContents obj,const std::string & str,bool commaNeeded=true)3714 static void print_VkSubpassContents(VkSubpassContents obj, const std::string& str, bool commaNeeded=true) {
3715 PRINT_SPACE
3716 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3717 if (commaNeeded)
3718 _OUT << "\"" << VkSubpassContents_map[obj] << "\"," << std::endl;
3719 else
3720 _OUT << "\"" << VkSubpassContents_map[obj] << "\"" << std::endl;
3721 }
print_VkSubpassContents(const VkSubpassContents * obj,const std::string & str,bool commaNeeded=true)3722 static void print_VkSubpassContents(const VkSubpassContents * obj, const std::string& str, bool commaNeeded=true) {
3723 PRINT_SPACE
3724 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3725 if (commaNeeded)
3726 _OUT << "\"" << VkSubpassContents_map[*obj] << "\"," << std::endl;
3727 else
3728 _OUT << "\"" << VkSubpassContents_map[*obj] << "\"" << std::endl;
3729 }
3730
print_VkAccessFlags(VkAccessFlags obj,const std::string & str,bool commaNeeded=true)3731 static void print_VkAccessFlags(VkAccessFlags obj, const std::string& str, bool commaNeeded=true) {
3732 PRINT_SPACE
3733 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3734 const int max_bits = 64; // We don't expect the number to be larger.
3735 std::bitset<max_bits> b(obj);
3736 _OUT << "\"";
3737 if (obj == 0) _OUT << "0";
3738 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3739 if (b[i] == 1) {
3740 bitCount++;
3741 if (bitCount < b.count())
3742 _OUT << VkAccessFlagBits_map[1ULL<<i] << " | ";
3743 else
3744 _OUT << VkAccessFlagBits_map[1ULL<<i];
3745 }
3746 }
3747 if (commaNeeded)
3748 _OUT << "\"" << ",";
3749 else
3750 _OUT << "\""<< "";
3751 _OUT << std::endl;
3752 }
print_VkAccessFlags(const VkAccessFlags * obj,const std::string & str,bool commaNeeded=true)3753 static void print_VkAccessFlags(const VkAccessFlags * obj, const std::string& str, bool commaNeeded=true) {
3754 PRINT_SPACE
3755 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3756 const int max_bits = 64; // We don't expect the number to be larger.
3757 std::bitset<max_bits> b(obj);
3758 _OUT << "\"";
3759 if (obj == 0) _OUT << "0";
3760 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3761 if (b[i] == 1) {
3762 bitCount++;
3763 if (bitCount < b.count())
3764 _OUT << VkAccessFlagBits_map[1ULL<<i] << " | ";
3765 else
3766 _OUT << VkAccessFlagBits_map[1ULL<<i];
3767 }
3768 }
3769 if (commaNeeded)
3770 _OUT << "\"" << ",";
3771 else
3772 _OUT << "\""<< "";
3773 _OUT << std::endl;
3774 }
3775
print_VkImageAspectFlags(VkImageAspectFlags obj,const std::string & str,bool commaNeeded=true)3776 static void print_VkImageAspectFlags(VkImageAspectFlags obj, const std::string& str, bool commaNeeded=true) {
3777 PRINT_SPACE
3778 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3779 const int max_bits = 64; // We don't expect the number to be larger.
3780 std::bitset<max_bits> b(obj);
3781 _OUT << "\"";
3782 if (obj == 0) _OUT << "0";
3783 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3784 if (b[i] == 1) {
3785 bitCount++;
3786 if (bitCount < b.count())
3787 _OUT << VkImageAspectFlagBits_map[1ULL<<i] << " | ";
3788 else
3789 _OUT << VkImageAspectFlagBits_map[1ULL<<i];
3790 }
3791 }
3792 if (commaNeeded)
3793 _OUT << "\"" << ",";
3794 else
3795 _OUT << "\""<< "";
3796 _OUT << std::endl;
3797 }
print_VkImageAspectFlags(const VkImageAspectFlags * obj,const std::string & str,bool commaNeeded=true)3798 static void print_VkImageAspectFlags(const VkImageAspectFlags * obj, const std::string& str, bool commaNeeded=true) {
3799 PRINT_SPACE
3800 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3801 const int max_bits = 64; // We don't expect the number to be larger.
3802 std::bitset<max_bits> b(obj);
3803 _OUT << "\"";
3804 if (obj == 0) _OUT << "0";
3805 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3806 if (b[i] == 1) {
3807 bitCount++;
3808 if (bitCount < b.count())
3809 _OUT << VkImageAspectFlagBits_map[1ULL<<i] << " | ";
3810 else
3811 _OUT << VkImageAspectFlagBits_map[1ULL<<i];
3812 }
3813 }
3814 if (commaNeeded)
3815 _OUT << "\"" << ",";
3816 else
3817 _OUT << "\""<< "";
3818 _OUT << std::endl;
3819 }
3820
print_VkFormatFeatureFlags(VkFormatFeatureFlags obj,const std::string & str,bool commaNeeded=true)3821 static void print_VkFormatFeatureFlags(VkFormatFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
3822 PRINT_SPACE
3823 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3824 const int max_bits = 64; // We don't expect the number to be larger.
3825 std::bitset<max_bits> b(obj);
3826 _OUT << "\"";
3827 if (obj == 0) _OUT << "0";
3828 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3829 if (b[i] == 1) {
3830 bitCount++;
3831 if (bitCount < b.count())
3832 _OUT << VkFormatFeatureFlagBits_map[1ULL<<i] << " | ";
3833 else
3834 _OUT << VkFormatFeatureFlagBits_map[1ULL<<i];
3835 }
3836 }
3837 if (commaNeeded)
3838 _OUT << "\"" << ",";
3839 else
3840 _OUT << "\""<< "";
3841 _OUT << std::endl;
3842 }
print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj,const std::string & str,bool commaNeeded=true)3843 static void print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
3844 PRINT_SPACE
3845 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3846 const int max_bits = 64; // We don't expect the number to be larger.
3847 std::bitset<max_bits> b(obj);
3848 _OUT << "\"";
3849 if (obj == 0) _OUT << "0";
3850 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3851 if (b[i] == 1) {
3852 bitCount++;
3853 if (bitCount < b.count())
3854 _OUT << VkFormatFeatureFlagBits_map[1ULL<<i] << " | ";
3855 else
3856 _OUT << VkFormatFeatureFlagBits_map[1ULL<<i];
3857 }
3858 }
3859 if (commaNeeded)
3860 _OUT << "\"" << ",";
3861 else
3862 _OUT << "\""<< "";
3863 _OUT << std::endl;
3864 }
3865
print_VkImageCreateFlags(VkImageCreateFlags obj,const std::string & str,bool commaNeeded=true)3866 static void print_VkImageCreateFlags(VkImageCreateFlags obj, const std::string& str, bool commaNeeded=true) {
3867 PRINT_SPACE
3868 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3869 const int max_bits = 64; // We don't expect the number to be larger.
3870 std::bitset<max_bits> b(obj);
3871 _OUT << "\"";
3872 if (obj == 0) _OUT << "0";
3873 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3874 if (b[i] == 1) {
3875 bitCount++;
3876 if (bitCount < b.count())
3877 _OUT << VkImageCreateFlagBits_map[1ULL<<i] << " | ";
3878 else
3879 _OUT << VkImageCreateFlagBits_map[1ULL<<i];
3880 }
3881 }
3882 if (commaNeeded)
3883 _OUT << "\"" << ",";
3884 else
3885 _OUT << "\""<< "";
3886 _OUT << std::endl;
3887 }
print_VkImageCreateFlags(const VkImageCreateFlags * obj,const std::string & str,bool commaNeeded=true)3888 static void print_VkImageCreateFlags(const VkImageCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
3889 PRINT_SPACE
3890 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3891 const int max_bits = 64; // We don't expect the number to be larger.
3892 std::bitset<max_bits> b(obj);
3893 _OUT << "\"";
3894 if (obj == 0) _OUT << "0";
3895 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3896 if (b[i] == 1) {
3897 bitCount++;
3898 if (bitCount < b.count())
3899 _OUT << VkImageCreateFlagBits_map[1ULL<<i] << " | ";
3900 else
3901 _OUT << VkImageCreateFlagBits_map[1ULL<<i];
3902 }
3903 }
3904 if (commaNeeded)
3905 _OUT << "\"" << ",";
3906 else
3907 _OUT << "\""<< "";
3908 _OUT << std::endl;
3909 }
3910
print_VkSampleCountFlags(VkSampleCountFlags obj,const std::string & str,bool commaNeeded=true)3911 static void print_VkSampleCountFlags(VkSampleCountFlags obj, const std::string& str, bool commaNeeded=true) {
3912 PRINT_SPACE
3913 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3914 const int max_bits = 64; // We don't expect the number to be larger.
3915 std::bitset<max_bits> b(obj);
3916 _OUT << "\"";
3917 if (obj == 0) _OUT << "0";
3918 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3919 if (b[i] == 1) {
3920 bitCount++;
3921 if (bitCount < b.count())
3922 _OUT << VkSampleCountFlagBits_map[1ULL<<i] << " | ";
3923 else
3924 _OUT << VkSampleCountFlagBits_map[1ULL<<i];
3925 }
3926 }
3927 if (commaNeeded)
3928 _OUT << "\"" << ",";
3929 else
3930 _OUT << "\""<< "";
3931 _OUT << std::endl;
3932 }
print_VkSampleCountFlags(const VkSampleCountFlags * obj,const std::string & str,bool commaNeeded=true)3933 static void print_VkSampleCountFlags(const VkSampleCountFlags * obj, const std::string& str, bool commaNeeded=true) {
3934 PRINT_SPACE
3935 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3936 const int max_bits = 64; // We don't expect the number to be larger.
3937 std::bitset<max_bits> b(obj);
3938 _OUT << "\"";
3939 if (obj == 0) _OUT << "0";
3940 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3941 if (b[i] == 1) {
3942 bitCount++;
3943 if (bitCount < b.count())
3944 _OUT << VkSampleCountFlagBits_map[1ULL<<i] << " | ";
3945 else
3946 _OUT << VkSampleCountFlagBits_map[1ULL<<i];
3947 }
3948 }
3949 if (commaNeeded)
3950 _OUT << "\"" << ",";
3951 else
3952 _OUT << "\""<< "";
3953 _OUT << std::endl;
3954 }
3955
print_VkImageUsageFlags(VkImageUsageFlags obj,const std::string & str,bool commaNeeded=true)3956 static void print_VkImageUsageFlags(VkImageUsageFlags obj, const std::string& str, bool commaNeeded=true) {
3957 PRINT_SPACE
3958 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3959 const int max_bits = 64; // We don't expect the number to be larger.
3960 std::bitset<max_bits> b(obj);
3961 _OUT << "\"";
3962 if (obj == 0) _OUT << "0";
3963 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3964 if (b[i] == 1) {
3965 bitCount++;
3966 if (bitCount < b.count())
3967 _OUT << VkImageUsageFlagBits_map[1ULL<<i] << " | ";
3968 else
3969 _OUT << VkImageUsageFlagBits_map[1ULL<<i];
3970 }
3971 }
3972 if (commaNeeded)
3973 _OUT << "\"" << ",";
3974 else
3975 _OUT << "\""<< "";
3976 _OUT << std::endl;
3977 }
print_VkImageUsageFlags(const VkImageUsageFlags * obj,const std::string & str,bool commaNeeded=true)3978 static void print_VkImageUsageFlags(const VkImageUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
3979 PRINT_SPACE
3980 if (str != "") _OUT << "\"" << str << "\"" << " : ";
3981 const int max_bits = 64; // We don't expect the number to be larger.
3982 std::bitset<max_bits> b(obj);
3983 _OUT << "\"";
3984 if (obj == 0) _OUT << "0";
3985 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3986 if (b[i] == 1) {
3987 bitCount++;
3988 if (bitCount < b.count())
3989 _OUT << VkImageUsageFlagBits_map[1ULL<<i] << " | ";
3990 else
3991 _OUT << VkImageUsageFlagBits_map[1ULL<<i];
3992 }
3993 }
3994 if (commaNeeded)
3995 _OUT << "\"" << ",";
3996 else
3997 _OUT << "\""<< "";
3998 _OUT << std::endl;
3999 }
4000
print_VkInstanceCreateFlags(VkInstanceCreateFlags obj,const std::string & str,bool commaNeeded=true)4001 static void print_VkInstanceCreateFlags(VkInstanceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4002 PRINT_SPACE
4003 if (commaNeeded)
4004 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4005 else
4006 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4007 }
print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj,const std::string & str,bool commaNeeded=true)4008 static void print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4009 PRINT_SPACE
4010 if (commaNeeded)
4011 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4012 else
4013 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4014 }
4015
print_VkMemoryHeapFlags(VkMemoryHeapFlags obj,const std::string & str,bool commaNeeded=true)4016 static void print_VkMemoryHeapFlags(VkMemoryHeapFlags obj, const std::string& str, bool commaNeeded=true) {
4017 PRINT_SPACE
4018 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4019 const int max_bits = 64; // We don't expect the number to be larger.
4020 std::bitset<max_bits> b(obj);
4021 _OUT << "\"";
4022 if (obj == 0) _OUT << "0";
4023 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4024 if (b[i] == 1) {
4025 bitCount++;
4026 if (bitCount < b.count())
4027 _OUT << VkMemoryHeapFlagBits_map[1ULL<<i] << " | ";
4028 else
4029 _OUT << VkMemoryHeapFlagBits_map[1ULL<<i];
4030 }
4031 }
4032 if (commaNeeded)
4033 _OUT << "\"" << ",";
4034 else
4035 _OUT << "\""<< "";
4036 _OUT << std::endl;
4037 }
print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj,const std::string & str,bool commaNeeded=true)4038 static void print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj, const std::string& str, bool commaNeeded=true) {
4039 PRINT_SPACE
4040 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4041 const int max_bits = 64; // We don't expect the number to be larger.
4042 std::bitset<max_bits> b(obj);
4043 _OUT << "\"";
4044 if (obj == 0) _OUT << "0";
4045 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4046 if (b[i] == 1) {
4047 bitCount++;
4048 if (bitCount < b.count())
4049 _OUT << VkMemoryHeapFlagBits_map[1ULL<<i] << " | ";
4050 else
4051 _OUT << VkMemoryHeapFlagBits_map[1ULL<<i];
4052 }
4053 }
4054 if (commaNeeded)
4055 _OUT << "\"" << ",";
4056 else
4057 _OUT << "\""<< "";
4058 _OUT << std::endl;
4059 }
4060
print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj,const std::string & str,bool commaNeeded=true)4061 static void print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj, const std::string& str, bool commaNeeded=true) {
4062 PRINT_SPACE
4063 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4064 const int max_bits = 64; // We don't expect the number to be larger.
4065 std::bitset<max_bits> b(obj);
4066 _OUT << "\"";
4067 if (obj == 0) _OUT << "0";
4068 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4069 if (b[i] == 1) {
4070 bitCount++;
4071 if (bitCount < b.count())
4072 _OUT << VkMemoryPropertyFlagBits_map[1ULL<<i] << " | ";
4073 else
4074 _OUT << VkMemoryPropertyFlagBits_map[1ULL<<i];
4075 }
4076 }
4077 if (commaNeeded)
4078 _OUT << "\"" << ",";
4079 else
4080 _OUT << "\""<< "";
4081 _OUT << std::endl;
4082 }
print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj,const std::string & str,bool commaNeeded=true)4083 static void print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj, const std::string& str, bool commaNeeded=true) {
4084 PRINT_SPACE
4085 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4086 const int max_bits = 64; // We don't expect the number to be larger.
4087 std::bitset<max_bits> b(obj);
4088 _OUT << "\"";
4089 if (obj == 0) _OUT << "0";
4090 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4091 if (b[i] == 1) {
4092 bitCount++;
4093 if (bitCount < b.count())
4094 _OUT << VkMemoryPropertyFlagBits_map[1ULL<<i] << " | ";
4095 else
4096 _OUT << VkMemoryPropertyFlagBits_map[1ULL<<i];
4097 }
4098 }
4099 if (commaNeeded)
4100 _OUT << "\"" << ",";
4101 else
4102 _OUT << "\""<< "";
4103 _OUT << std::endl;
4104 }
4105
print_VkQueueFlags(VkQueueFlags obj,const std::string & str,bool commaNeeded=true)4106 static void print_VkQueueFlags(VkQueueFlags obj, const std::string& str, bool commaNeeded=true) {
4107 PRINT_SPACE
4108 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4109 const int max_bits = 64; // We don't expect the number to be larger.
4110 std::bitset<max_bits> b(obj);
4111 _OUT << "\"";
4112 if (obj == 0) _OUT << "0";
4113 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4114 if (b[i] == 1) {
4115 bitCount++;
4116 if (bitCount < b.count())
4117 _OUT << VkQueueFlagBits_map[1ULL<<i] << " | ";
4118 else
4119 _OUT << VkQueueFlagBits_map[1ULL<<i];
4120 }
4121 }
4122 if (commaNeeded)
4123 _OUT << "\"" << ",";
4124 else
4125 _OUT << "\""<< "";
4126 _OUT << std::endl;
4127 }
print_VkQueueFlags(const VkQueueFlags * obj,const std::string & str,bool commaNeeded=true)4128 static void print_VkQueueFlags(const VkQueueFlags * obj, const std::string& str, bool commaNeeded=true) {
4129 PRINT_SPACE
4130 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4131 const int max_bits = 64; // We don't expect the number to be larger.
4132 std::bitset<max_bits> b(obj);
4133 _OUT << "\"";
4134 if (obj == 0) _OUT << "0";
4135 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4136 if (b[i] == 1) {
4137 bitCount++;
4138 if (bitCount < b.count())
4139 _OUT << VkQueueFlagBits_map[1ULL<<i] << " | ";
4140 else
4141 _OUT << VkQueueFlagBits_map[1ULL<<i];
4142 }
4143 }
4144 if (commaNeeded)
4145 _OUT << "\"" << ",";
4146 else
4147 _OUT << "\""<< "";
4148 _OUT << std::endl;
4149 }
4150
print_VkDeviceCreateFlags(VkDeviceCreateFlags obj,const std::string & str,bool commaNeeded=true)4151 static void print_VkDeviceCreateFlags(VkDeviceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4152 PRINT_SPACE
4153 if (commaNeeded)
4154 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4155 else
4156 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4157 }
print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj,const std::string & str,bool commaNeeded=true)4158 static void print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4159 PRINT_SPACE
4160 if (commaNeeded)
4161 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4162 else
4163 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4164 }
4165
print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj,const std::string & str,bool commaNeeded=true)4166 static void print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4167 PRINT_SPACE
4168 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4169 const int max_bits = 64; // We don't expect the number to be larger.
4170 std::bitset<max_bits> b(obj);
4171 _OUT << "\"";
4172 if (obj == 0) _OUT << "0";
4173 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4174 if (b[i] == 1) {
4175 bitCount++;
4176 if (bitCount < b.count())
4177 _OUT << VkDeviceQueueCreateFlagBits_map[1ULL<<i] << " | ";
4178 else
4179 _OUT << VkDeviceQueueCreateFlagBits_map[1ULL<<i];
4180 }
4181 }
4182 if (commaNeeded)
4183 _OUT << "\"" << ",";
4184 else
4185 _OUT << "\""<< "";
4186 _OUT << std::endl;
4187 }
print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj,const std::string & str,bool commaNeeded=true)4188 static void print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4189 PRINT_SPACE
4190 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4191 const int max_bits = 64; // We don't expect the number to be larger.
4192 std::bitset<max_bits> b(obj);
4193 _OUT << "\"";
4194 if (obj == 0) _OUT << "0";
4195 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4196 if (b[i] == 1) {
4197 bitCount++;
4198 if (bitCount < b.count())
4199 _OUT << VkDeviceQueueCreateFlagBits_map[1ULL<<i] << " | ";
4200 else
4201 _OUT << VkDeviceQueueCreateFlagBits_map[1ULL<<i];
4202 }
4203 }
4204 if (commaNeeded)
4205 _OUT << "\"" << ",";
4206 else
4207 _OUT << "\""<< "";
4208 _OUT << std::endl;
4209 }
4210
print_VkPipelineStageFlags(VkPipelineStageFlags obj,const std::string & str,bool commaNeeded=true)4211 static void print_VkPipelineStageFlags(VkPipelineStageFlags obj, const std::string& str, bool commaNeeded=true) {
4212 PRINT_SPACE
4213 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4214 const int max_bits = 64; // We don't expect the number to be larger.
4215 std::bitset<max_bits> b(obj);
4216 _OUT << "\"";
4217 if (obj == 0) _OUT << "0";
4218 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4219 if (b[i] == 1) {
4220 bitCount++;
4221 if (bitCount < b.count())
4222 _OUT << VkPipelineStageFlagBits_map[1ULL<<i] << " | ";
4223 else
4224 _OUT << VkPipelineStageFlagBits_map[1ULL<<i];
4225 }
4226 }
4227 if (commaNeeded)
4228 _OUT << "\"" << ",";
4229 else
4230 _OUT << "\""<< "";
4231 _OUT << std::endl;
4232 }
print_VkPipelineStageFlags(const VkPipelineStageFlags * obj,const std::string & str,bool commaNeeded=true)4233 static void print_VkPipelineStageFlags(const VkPipelineStageFlags * obj, const std::string& str, bool commaNeeded=true) {
4234 PRINT_SPACE
4235 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4236 const int max_bits = 64; // We don't expect the number to be larger.
4237 std::bitset<max_bits> b(obj);
4238 _OUT << "\"";
4239 if (obj == 0) _OUT << "0";
4240 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4241 if (b[i] == 1) {
4242 bitCount++;
4243 if (bitCount < b.count())
4244 _OUT << VkPipelineStageFlagBits_map[1ULL<<i] << " | ";
4245 else
4246 _OUT << VkPipelineStageFlagBits_map[1ULL<<i];
4247 }
4248 }
4249 if (commaNeeded)
4250 _OUT << "\"" << ",";
4251 else
4252 _OUT << "\""<< "";
4253 _OUT << std::endl;
4254 }
4255
print_VkMemoryMapFlags(VkMemoryMapFlags obj,const std::string & str,bool commaNeeded=true)4256 static void print_VkMemoryMapFlags(VkMemoryMapFlags obj, const std::string& str, bool commaNeeded=true) {
4257 PRINT_SPACE
4258 if (commaNeeded)
4259 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4260 else
4261 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4262 }
print_VkMemoryMapFlags(const VkMemoryMapFlags * obj,const std::string & str,bool commaNeeded=true)4263 static void print_VkMemoryMapFlags(const VkMemoryMapFlags * obj, const std::string& str, bool commaNeeded=true) {
4264 PRINT_SPACE
4265 if (commaNeeded)
4266 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4267 else
4268 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4269 }
4270
print_VkFenceCreateFlags(VkFenceCreateFlags obj,const std::string & str,bool commaNeeded=true)4271 static void print_VkFenceCreateFlags(VkFenceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4272 PRINT_SPACE
4273 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4274 const int max_bits = 64; // We don't expect the number to be larger.
4275 std::bitset<max_bits> b(obj);
4276 _OUT << "\"";
4277 if (obj == 0) _OUT << "0";
4278 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4279 if (b[i] == 1) {
4280 bitCount++;
4281 if (bitCount < b.count())
4282 _OUT << VkFenceCreateFlagBits_map[1ULL<<i] << " | ";
4283 else
4284 _OUT << VkFenceCreateFlagBits_map[1ULL<<i];
4285 }
4286 }
4287 if (commaNeeded)
4288 _OUT << "\"" << ",";
4289 else
4290 _OUT << "\""<< "";
4291 _OUT << std::endl;
4292 }
print_VkFenceCreateFlags(const VkFenceCreateFlags * obj,const std::string & str,bool commaNeeded=true)4293 static void print_VkFenceCreateFlags(const VkFenceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4294 PRINT_SPACE
4295 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4296 const int max_bits = 64; // We don't expect the number to be larger.
4297 std::bitset<max_bits> b(obj);
4298 _OUT << "\"";
4299 if (obj == 0) _OUT << "0";
4300 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4301 if (b[i] == 1) {
4302 bitCount++;
4303 if (bitCount < b.count())
4304 _OUT << VkFenceCreateFlagBits_map[1ULL<<i] << " | ";
4305 else
4306 _OUT << VkFenceCreateFlagBits_map[1ULL<<i];
4307 }
4308 }
4309 if (commaNeeded)
4310 _OUT << "\"" << ",";
4311 else
4312 _OUT << "\""<< "";
4313 _OUT << std::endl;
4314 }
4315
print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj,const std::string & str,bool commaNeeded=true)4316 static void print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4317 PRINT_SPACE
4318 if (commaNeeded)
4319 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4320 else
4321 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4322 }
print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj,const std::string & str,bool commaNeeded=true)4323 static void print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4324 PRINT_SPACE
4325 if (commaNeeded)
4326 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4327 else
4328 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4329 }
4330
print_VkEventCreateFlags(VkEventCreateFlags obj,const std::string & str,bool commaNeeded=true)4331 static void print_VkEventCreateFlags(VkEventCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4332 PRINT_SPACE
4333 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4334 const int max_bits = 64; // We don't expect the number to be larger.
4335 std::bitset<max_bits> b(obj);
4336 _OUT << "\"";
4337 if (obj == 0) _OUT << "0";
4338 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4339 if (b[i] == 1) {
4340 bitCount++;
4341 if (bitCount < b.count())
4342 _OUT << VkEventCreateFlagBits_map[1ULL<<i] << " | ";
4343 else
4344 _OUT << VkEventCreateFlagBits_map[1ULL<<i];
4345 }
4346 }
4347 if (commaNeeded)
4348 _OUT << "\"" << ",";
4349 else
4350 _OUT << "\""<< "";
4351 _OUT << std::endl;
4352 }
print_VkEventCreateFlags(const VkEventCreateFlags * obj,const std::string & str,bool commaNeeded=true)4353 static void print_VkEventCreateFlags(const VkEventCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4354 PRINT_SPACE
4355 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4356 const int max_bits = 64; // We don't expect the number to be larger.
4357 std::bitset<max_bits> b(obj);
4358 _OUT << "\"";
4359 if (obj == 0) _OUT << "0";
4360 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4361 if (b[i] == 1) {
4362 bitCount++;
4363 if (bitCount < b.count())
4364 _OUT << VkEventCreateFlagBits_map[1ULL<<i] << " | ";
4365 else
4366 _OUT << VkEventCreateFlagBits_map[1ULL<<i];
4367 }
4368 }
4369 if (commaNeeded)
4370 _OUT << "\"" << ",";
4371 else
4372 _OUT << "\""<< "";
4373 _OUT << std::endl;
4374 }
4375
print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj,const std::string & str,bool commaNeeded=true)4376 static void print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj, const std::string& str, bool commaNeeded=true) {
4377 PRINT_SPACE
4378 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4379 const int max_bits = 64; // We don't expect the number to be larger.
4380 std::bitset<max_bits> b(obj);
4381 _OUT << "\"";
4382 if (obj == 0) _OUT << "0";
4383 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4384 if (b[i] == 1) {
4385 bitCount++;
4386 if (bitCount < b.count())
4387 _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL<<i] << " | ";
4388 else
4389 _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL<<i];
4390 }
4391 }
4392 if (commaNeeded)
4393 _OUT << "\"" << ",";
4394 else
4395 _OUT << "\""<< "";
4396 _OUT << std::endl;
4397 }
print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags * obj,const std::string & str,bool commaNeeded=true)4398 static void print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags * obj, const std::string& str, bool commaNeeded=true) {
4399 PRINT_SPACE
4400 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4401 const int max_bits = 64; // We don't expect the number to be larger.
4402 std::bitset<max_bits> b(obj);
4403 _OUT << "\"";
4404 if (obj == 0) _OUT << "0";
4405 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4406 if (b[i] == 1) {
4407 bitCount++;
4408 if (bitCount < b.count())
4409 _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL<<i] << " | ";
4410 else
4411 _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL<<i];
4412 }
4413 }
4414 if (commaNeeded)
4415 _OUT << "\"" << ",";
4416 else
4417 _OUT << "\""<< "";
4418 _OUT << std::endl;
4419 }
4420
print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)4421 static void print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4422 PRINT_SPACE
4423 if (commaNeeded)
4424 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4425 else
4426 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4427 }
print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)4428 static void print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4429 PRINT_SPACE
4430 if (commaNeeded)
4431 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4432 else
4433 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4434 }
4435
print_VkQueryResultFlags(VkQueryResultFlags obj,const std::string & str,bool commaNeeded=true)4436 static void print_VkQueryResultFlags(VkQueryResultFlags obj, const std::string& str, bool commaNeeded=true) {
4437 PRINT_SPACE
4438 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4439 const int max_bits = 64; // We don't expect the number to be larger.
4440 std::bitset<max_bits> b(obj);
4441 _OUT << "\"";
4442 if (obj == 0) _OUT << "0";
4443 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4444 if (b[i] == 1) {
4445 bitCount++;
4446 if (bitCount < b.count())
4447 _OUT << VkQueryResultFlagBits_map[1ULL<<i] << " | ";
4448 else
4449 _OUT << VkQueryResultFlagBits_map[1ULL<<i];
4450 }
4451 }
4452 if (commaNeeded)
4453 _OUT << "\"" << ",";
4454 else
4455 _OUT << "\""<< "";
4456 _OUT << std::endl;
4457 }
print_VkQueryResultFlags(const VkQueryResultFlags * obj,const std::string & str,bool commaNeeded=true)4458 static void print_VkQueryResultFlags(const VkQueryResultFlags * obj, const std::string& str, bool commaNeeded=true) {
4459 PRINT_SPACE
4460 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4461 const int max_bits = 64; // We don't expect the number to be larger.
4462 std::bitset<max_bits> b(obj);
4463 _OUT << "\"";
4464 if (obj == 0) _OUT << "0";
4465 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4466 if (b[i] == 1) {
4467 bitCount++;
4468 if (bitCount < b.count())
4469 _OUT << VkQueryResultFlagBits_map[1ULL<<i] << " | ";
4470 else
4471 _OUT << VkQueryResultFlagBits_map[1ULL<<i];
4472 }
4473 }
4474 if (commaNeeded)
4475 _OUT << "\"" << ",";
4476 else
4477 _OUT << "\""<< "";
4478 _OUT << std::endl;
4479 }
4480
print_VkBufferCreateFlags(VkBufferCreateFlags obj,const std::string & str,bool commaNeeded=true)4481 static void print_VkBufferCreateFlags(VkBufferCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4482 PRINT_SPACE
4483 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4484 const int max_bits = 64; // We don't expect the number to be larger.
4485 std::bitset<max_bits> b(obj);
4486 _OUT << "\"";
4487 if (obj == 0) _OUT << "0";
4488 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4489 if (b[i] == 1) {
4490 bitCount++;
4491 if (bitCount < b.count())
4492 _OUT << VkBufferCreateFlagBits_map[1ULL<<i] << " | ";
4493 else
4494 _OUT << VkBufferCreateFlagBits_map[1ULL<<i];
4495 }
4496 }
4497 if (commaNeeded)
4498 _OUT << "\"" << ",";
4499 else
4500 _OUT << "\""<< "";
4501 _OUT << std::endl;
4502 }
print_VkBufferCreateFlags(const VkBufferCreateFlags * obj,const std::string & str,bool commaNeeded=true)4503 static void print_VkBufferCreateFlags(const VkBufferCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4504 PRINT_SPACE
4505 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4506 const int max_bits = 64; // We don't expect the number to be larger.
4507 std::bitset<max_bits> b(obj);
4508 _OUT << "\"";
4509 if (obj == 0) _OUT << "0";
4510 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4511 if (b[i] == 1) {
4512 bitCount++;
4513 if (bitCount < b.count())
4514 _OUT << VkBufferCreateFlagBits_map[1ULL<<i] << " | ";
4515 else
4516 _OUT << VkBufferCreateFlagBits_map[1ULL<<i];
4517 }
4518 }
4519 if (commaNeeded)
4520 _OUT << "\"" << ",";
4521 else
4522 _OUT << "\""<< "";
4523 _OUT << std::endl;
4524 }
4525
print_VkBufferUsageFlags(VkBufferUsageFlags obj,const std::string & str,bool commaNeeded=true)4526 static void print_VkBufferUsageFlags(VkBufferUsageFlags obj, const std::string& str, bool commaNeeded=true) {
4527 PRINT_SPACE
4528 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4529 const int max_bits = 64; // We don't expect the number to be larger.
4530 std::bitset<max_bits> b(obj);
4531 _OUT << "\"";
4532 if (obj == 0) _OUT << "0";
4533 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4534 if (b[i] == 1) {
4535 bitCount++;
4536 if (bitCount < b.count())
4537 _OUT << VkBufferUsageFlagBits_map[1ULL<<i] << " | ";
4538 else
4539 _OUT << VkBufferUsageFlagBits_map[1ULL<<i];
4540 }
4541 }
4542 if (commaNeeded)
4543 _OUT << "\"" << ",";
4544 else
4545 _OUT << "\""<< "";
4546 _OUT << std::endl;
4547 }
print_VkBufferUsageFlags(const VkBufferUsageFlags * obj,const std::string & str,bool commaNeeded=true)4548 static void print_VkBufferUsageFlags(const VkBufferUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
4549 PRINT_SPACE
4550 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4551 const int max_bits = 64; // We don't expect the number to be larger.
4552 std::bitset<max_bits> b(obj);
4553 _OUT << "\"";
4554 if (obj == 0) _OUT << "0";
4555 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4556 if (b[i] == 1) {
4557 bitCount++;
4558 if (bitCount < b.count())
4559 _OUT << VkBufferUsageFlagBits_map[1ULL<<i] << " | ";
4560 else
4561 _OUT << VkBufferUsageFlagBits_map[1ULL<<i];
4562 }
4563 }
4564 if (commaNeeded)
4565 _OUT << "\"" << ",";
4566 else
4567 _OUT << "\""<< "";
4568 _OUT << std::endl;
4569 }
4570
print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj,const std::string & str,bool commaNeeded=true)4571 static void print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4572 PRINT_SPACE
4573 if (commaNeeded)
4574 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4575 else
4576 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4577 }
print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj,const std::string & str,bool commaNeeded=true)4578 static void print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4579 PRINT_SPACE
4580 if (commaNeeded)
4581 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4582 else
4583 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4584 }
4585
print_VkImageViewCreateFlags(VkImageViewCreateFlags obj,const std::string & str,bool commaNeeded=true)4586 static void print_VkImageViewCreateFlags(VkImageViewCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4587 PRINT_SPACE
4588 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4589 const int max_bits = 64; // We don't expect the number to be larger.
4590 std::bitset<max_bits> b(obj);
4591 _OUT << "\"";
4592 if (obj == 0) _OUT << "0";
4593 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4594 if (b[i] == 1) {
4595 bitCount++;
4596 if (bitCount < b.count())
4597 _OUT << VkImageViewCreateFlagBits_map[1ULL<<i] << " | ";
4598 else
4599 _OUT << VkImageViewCreateFlagBits_map[1ULL<<i];
4600 }
4601 }
4602 if (commaNeeded)
4603 _OUT << "\"" << ",";
4604 else
4605 _OUT << "\""<< "";
4606 _OUT << std::endl;
4607 }
print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj,const std::string & str,bool commaNeeded=true)4608 static void print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4609 PRINT_SPACE
4610 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4611 const int max_bits = 64; // We don't expect the number to be larger.
4612 std::bitset<max_bits> b(obj);
4613 _OUT << "\"";
4614 if (obj == 0) _OUT << "0";
4615 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4616 if (b[i] == 1) {
4617 bitCount++;
4618 if (bitCount < b.count())
4619 _OUT << VkImageViewCreateFlagBits_map[1ULL<<i] << " | ";
4620 else
4621 _OUT << VkImageViewCreateFlagBits_map[1ULL<<i];
4622 }
4623 }
4624 if (commaNeeded)
4625 _OUT << "\"" << ",";
4626 else
4627 _OUT << "\""<< "";
4628 _OUT << std::endl;
4629 }
4630
print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj,const std::string & str,bool commaNeeded=true)4631 static void print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4632 PRINT_SPACE
4633 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4634 const int max_bits = 64; // We don't expect the number to be larger.
4635 std::bitset<max_bits> b(obj);
4636 _OUT << "\"";
4637 if (obj == 0) _OUT << "0";
4638 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4639 if (b[i] == 1) {
4640 bitCount++;
4641 if (bitCount < b.count())
4642 _OUT << VkPipelineCacheCreateFlagBits_map[1ULL<<i] << " | ";
4643 else
4644 _OUT << VkPipelineCacheCreateFlagBits_map[1ULL<<i];
4645 }
4646 }
4647 if (commaNeeded)
4648 _OUT << "\"" << ",";
4649 else
4650 _OUT << "\""<< "";
4651 _OUT << std::endl;
4652 }
print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags * obj,const std::string & str,bool commaNeeded=true)4653 static void print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4654 PRINT_SPACE
4655 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4656 const int max_bits = 64; // We don't expect the number to be larger.
4657 std::bitset<max_bits> b(obj);
4658 _OUT << "\"";
4659 if (obj == 0) _OUT << "0";
4660 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4661 if (b[i] == 1) {
4662 bitCount++;
4663 if (bitCount < b.count())
4664 _OUT << VkPipelineCacheCreateFlagBits_map[1ULL<<i] << " | ";
4665 else
4666 _OUT << VkPipelineCacheCreateFlagBits_map[1ULL<<i];
4667 }
4668 }
4669 if (commaNeeded)
4670 _OUT << "\"" << ",";
4671 else
4672 _OUT << "\""<< "";
4673 _OUT << std::endl;
4674 }
4675
print_VkColorComponentFlags(VkColorComponentFlags obj,const std::string & str,bool commaNeeded=true)4676 static void print_VkColorComponentFlags(VkColorComponentFlags obj, const std::string& str, bool commaNeeded=true) {
4677 PRINT_SPACE
4678 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4679 const int max_bits = 64; // We don't expect the number to be larger.
4680 std::bitset<max_bits> b(obj);
4681 _OUT << "\"";
4682 if (obj == 0) _OUT << "0";
4683 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4684 if (b[i] == 1) {
4685 bitCount++;
4686 if (bitCount < b.count())
4687 _OUT << VkColorComponentFlagBits_map[1ULL<<i] << " | ";
4688 else
4689 _OUT << VkColorComponentFlagBits_map[1ULL<<i];
4690 }
4691 }
4692 if (commaNeeded)
4693 _OUT << "\"" << ",";
4694 else
4695 _OUT << "\""<< "";
4696 _OUT << std::endl;
4697 }
print_VkColorComponentFlags(const VkColorComponentFlags * obj,const std::string & str,bool commaNeeded=true)4698 static void print_VkColorComponentFlags(const VkColorComponentFlags * obj, const std::string& str, bool commaNeeded=true) {
4699 PRINT_SPACE
4700 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4701 const int max_bits = 64; // We don't expect the number to be larger.
4702 std::bitset<max_bits> b(obj);
4703 _OUT << "\"";
4704 if (obj == 0) _OUT << "0";
4705 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4706 if (b[i] == 1) {
4707 bitCount++;
4708 if (bitCount < b.count())
4709 _OUT << VkColorComponentFlagBits_map[1ULL<<i] << " | ";
4710 else
4711 _OUT << VkColorComponentFlagBits_map[1ULL<<i];
4712 }
4713 }
4714 if (commaNeeded)
4715 _OUT << "\"" << ",";
4716 else
4717 _OUT << "\""<< "";
4718 _OUT << std::endl;
4719 }
4720
print_VkPipelineCreateFlags(VkPipelineCreateFlags obj,const std::string & str,bool commaNeeded=true)4721 static void print_VkPipelineCreateFlags(VkPipelineCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4722 PRINT_SPACE
4723 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4724 const int max_bits = 64; // We don't expect the number to be larger.
4725 std::bitset<max_bits> b(obj);
4726 _OUT << "\"";
4727 if (obj == 0) _OUT << "0";
4728 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4729 if (b[i] == 1) {
4730 bitCount++;
4731 if (bitCount < b.count())
4732 _OUT << VkPipelineCreateFlagBits_map[1ULL<<i] << " | ";
4733 else
4734 _OUT << VkPipelineCreateFlagBits_map[1ULL<<i];
4735 }
4736 }
4737 if (commaNeeded)
4738 _OUT << "\"" << ",";
4739 else
4740 _OUT << "\""<< "";
4741 _OUT << std::endl;
4742 }
print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj,const std::string & str,bool commaNeeded=true)4743 static void print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4744 PRINT_SPACE
4745 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4746 const int max_bits = 64; // We don't expect the number to be larger.
4747 std::bitset<max_bits> b(obj);
4748 _OUT << "\"";
4749 if (obj == 0) _OUT << "0";
4750 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4751 if (b[i] == 1) {
4752 bitCount++;
4753 if (bitCount < b.count())
4754 _OUT << VkPipelineCreateFlagBits_map[1ULL<<i] << " | ";
4755 else
4756 _OUT << VkPipelineCreateFlagBits_map[1ULL<<i];
4757 }
4758 }
4759 if (commaNeeded)
4760 _OUT << "\"" << ",";
4761 else
4762 _OUT << "\""<< "";
4763 _OUT << std::endl;
4764 }
4765
print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj,const std::string & str,bool commaNeeded=true)4766 static void print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4767 PRINT_SPACE
4768 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4769 const int max_bits = 64; // We don't expect the number to be larger.
4770 std::bitset<max_bits> b(obj);
4771 _OUT << "\"";
4772 if (obj == 0) _OUT << "0";
4773 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4774 if (b[i] == 1) {
4775 bitCount++;
4776 if (bitCount < b.count())
4777 _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL<<i] << " | ";
4778 else
4779 _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL<<i];
4780 }
4781 }
4782 if (commaNeeded)
4783 _OUT << "\"" << ",";
4784 else
4785 _OUT << "\""<< "";
4786 _OUT << std::endl;
4787 }
print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags * obj,const std::string & str,bool commaNeeded=true)4788 static void print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4789 PRINT_SPACE
4790 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4791 const int max_bits = 64; // We don't expect the number to be larger.
4792 std::bitset<max_bits> b(obj);
4793 _OUT << "\"";
4794 if (obj == 0) _OUT << "0";
4795 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4796 if (b[i] == 1) {
4797 bitCount++;
4798 if (bitCount < b.count())
4799 _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL<<i] << " | ";
4800 else
4801 _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL<<i];
4802 }
4803 }
4804 if (commaNeeded)
4805 _OUT << "\"" << ",";
4806 else
4807 _OUT << "\""<< "";
4808 _OUT << std::endl;
4809 }
4810
print_VkCullModeFlags(VkCullModeFlags obj,const std::string & str,bool commaNeeded=true)4811 static void print_VkCullModeFlags(VkCullModeFlags obj, const std::string& str, bool commaNeeded=true) {
4812 PRINT_SPACE
4813 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4814 const int max_bits = 64; // We don't expect the number to be larger.
4815 std::bitset<max_bits> b(obj);
4816 _OUT << "\"";
4817 if (obj == 0) _OUT << "0";
4818 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4819 if (b[i] == 1) {
4820 bitCount++;
4821 if (bitCount < b.count())
4822 _OUT << VkCullModeFlagBits_map[1ULL<<i] << " | ";
4823 else
4824 _OUT << VkCullModeFlagBits_map[1ULL<<i];
4825 }
4826 }
4827 if (commaNeeded)
4828 _OUT << "\"" << ",";
4829 else
4830 _OUT << "\""<< "";
4831 _OUT << std::endl;
4832 }
print_VkCullModeFlags(const VkCullModeFlags * obj,const std::string & str,bool commaNeeded=true)4833 static void print_VkCullModeFlags(const VkCullModeFlags * obj, const std::string& str, bool commaNeeded=true) {
4834 PRINT_SPACE
4835 if (str != "") _OUT << "\"" << str << "\"" << " : ";
4836 const int max_bits = 64; // We don't expect the number to be larger.
4837 std::bitset<max_bits> b(obj);
4838 _OUT << "\"";
4839 if (obj == 0) _OUT << "0";
4840 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4841 if (b[i] == 1) {
4842 bitCount++;
4843 if (bitCount < b.count())
4844 _OUT << VkCullModeFlagBits_map[1ULL<<i] << " | ";
4845 else
4846 _OUT << VkCullModeFlagBits_map[1ULL<<i];
4847 }
4848 }
4849 if (commaNeeded)
4850 _OUT << "\"" << ",";
4851 else
4852 _OUT << "\""<< "";
4853 _OUT << std::endl;
4854 }
4855
print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4856 static void print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4857 PRINT_SPACE
4858 if (commaNeeded)
4859 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4860 else
4861 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4862 }
print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4863 static void print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4864 PRINT_SPACE
4865 if (commaNeeded)
4866 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4867 else
4868 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4869 }
4870
print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4871 static void print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4872 PRINT_SPACE
4873 if (commaNeeded)
4874 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4875 else
4876 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4877 }
print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4878 static void print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4879 PRINT_SPACE
4880 if (commaNeeded)
4881 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4882 else
4883 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4884 }
4885
print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4886 static void print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4887 PRINT_SPACE
4888 if (commaNeeded)
4889 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4890 else
4891 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4892 }
print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4893 static void print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4894 PRINT_SPACE
4895 if (commaNeeded)
4896 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4897 else
4898 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4899 }
4900
print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4901 static void print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4902 PRINT_SPACE
4903 if (commaNeeded)
4904 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4905 else
4906 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4907 }
print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4908 static void print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4909 PRINT_SPACE
4910 if (commaNeeded)
4911 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4912 else
4913 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4914 }
4915
print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4916 static void print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4917 PRINT_SPACE
4918 if (commaNeeded)
4919 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4920 else
4921 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4922 }
print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4923 static void print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4924 PRINT_SPACE
4925 if (commaNeeded)
4926 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4927 else
4928 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4929 }
4930
print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4931 static void print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4932 PRINT_SPACE
4933 if (commaNeeded)
4934 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4935 else
4936 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4937 }
print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4938 static void print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4939 PRINT_SPACE
4940 if (commaNeeded)
4941 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4942 else
4943 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4944 }
4945
print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4946 static void print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4947 PRINT_SPACE
4948 if (commaNeeded)
4949 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4950 else
4951 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4952 }
print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4953 static void print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4954 PRINT_SPACE
4955 if (commaNeeded)
4956 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4957 else
4958 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4959 }
4960
print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4961 static void print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4962 PRINT_SPACE
4963 if (commaNeeded)
4964 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4965 else
4966 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4967 }
print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4968 static void print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4969 PRINT_SPACE
4970 if (commaNeeded)
4971 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4972 else
4973 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4974 }
4975
print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4976 static void print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4977 PRINT_SPACE
4978 if (commaNeeded)
4979 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4980 else
4981 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4982 }
print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4983 static void print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4984 PRINT_SPACE
4985 if (commaNeeded)
4986 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4987 else
4988 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4989 }
4990
print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj,const std::string & str,bool commaNeeded=true)4991 static void print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4992 PRINT_SPACE
4993 if (commaNeeded)
4994 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4995 else
4996 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4997 }
print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags * obj,const std::string & str,bool commaNeeded=true)4998 static void print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4999 PRINT_SPACE
5000 if (commaNeeded)
5001 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
5002 else
5003 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
5004 }
5005
print_VkShaderStageFlags(VkShaderStageFlags obj,const std::string & str,bool commaNeeded=true)5006 static void print_VkShaderStageFlags(VkShaderStageFlags obj, const std::string& str, bool commaNeeded=true) {
5007 PRINT_SPACE
5008 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5009 const int max_bits = 64; // We don't expect the number to be larger.
5010 std::bitset<max_bits> b(obj);
5011 _OUT << "\"";
5012 if (obj == 0) _OUT << "0";
5013 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5014 if (b[i] == 1) {
5015 bitCount++;
5016 if (bitCount < b.count())
5017 _OUT << VkShaderStageFlagBits_map[1ULL<<i] << " | ";
5018 else
5019 _OUT << VkShaderStageFlagBits_map[1ULL<<i];
5020 }
5021 }
5022 if (commaNeeded)
5023 _OUT << "\"" << ",";
5024 else
5025 _OUT << "\""<< "";
5026 _OUT << std::endl;
5027 }
print_VkShaderStageFlags(const VkShaderStageFlags * obj,const std::string & str,bool commaNeeded=true)5028 static void print_VkShaderStageFlags(const VkShaderStageFlags * obj, const std::string& str, bool commaNeeded=true) {
5029 PRINT_SPACE
5030 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5031 const int max_bits = 64; // We don't expect the number to be larger.
5032 std::bitset<max_bits> b(obj);
5033 _OUT << "\"";
5034 if (obj == 0) _OUT << "0";
5035 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5036 if (b[i] == 1) {
5037 bitCount++;
5038 if (bitCount < b.count())
5039 _OUT << VkShaderStageFlagBits_map[1ULL<<i] << " | ";
5040 else
5041 _OUT << VkShaderStageFlagBits_map[1ULL<<i];
5042 }
5043 }
5044 if (commaNeeded)
5045 _OUT << "\"" << ",";
5046 else
5047 _OUT << "\""<< "";
5048 _OUT << std::endl;
5049 }
5050
print_VkSamplerCreateFlags(VkSamplerCreateFlags obj,const std::string & str,bool commaNeeded=true)5051 static void print_VkSamplerCreateFlags(VkSamplerCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5052 PRINT_SPACE
5053 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5054 const int max_bits = 64; // We don't expect the number to be larger.
5055 std::bitset<max_bits> b(obj);
5056 _OUT << "\"";
5057 if (obj == 0) _OUT << "0";
5058 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5059 if (b[i] == 1) {
5060 bitCount++;
5061 if (bitCount < b.count())
5062 _OUT << VkSamplerCreateFlagBits_map[1ULL<<i] << " | ";
5063 else
5064 _OUT << VkSamplerCreateFlagBits_map[1ULL<<i];
5065 }
5066 }
5067 if (commaNeeded)
5068 _OUT << "\"" << ",";
5069 else
5070 _OUT << "\""<< "";
5071 _OUT << std::endl;
5072 }
print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj,const std::string & str,bool commaNeeded=true)5073 static void print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5074 PRINT_SPACE
5075 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5076 const int max_bits = 64; // We don't expect the number to be larger.
5077 std::bitset<max_bits> b(obj);
5078 _OUT << "\"";
5079 if (obj == 0) _OUT << "0";
5080 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5081 if (b[i] == 1) {
5082 bitCount++;
5083 if (bitCount < b.count())
5084 _OUT << VkSamplerCreateFlagBits_map[1ULL<<i] << " | ";
5085 else
5086 _OUT << VkSamplerCreateFlagBits_map[1ULL<<i];
5087 }
5088 }
5089 if (commaNeeded)
5090 _OUT << "\"" << ",";
5091 else
5092 _OUT << "\""<< "";
5093 _OUT << std::endl;
5094 }
5095
print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)5096 static void print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5097 PRINT_SPACE
5098 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5099 const int max_bits = 64; // We don't expect the number to be larger.
5100 std::bitset<max_bits> b(obj);
5101 _OUT << "\"";
5102 if (obj == 0) _OUT << "0";
5103 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5104 if (b[i] == 1) {
5105 bitCount++;
5106 if (bitCount < b.count())
5107 _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL<<i] << " | ";
5108 else
5109 _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL<<i];
5110 }
5111 }
5112 if (commaNeeded)
5113 _OUT << "\"" << ",";
5114 else
5115 _OUT << "\""<< "";
5116 _OUT << std::endl;
5117 }
print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)5118 static void print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5119 PRINT_SPACE
5120 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5121 const int max_bits = 64; // We don't expect the number to be larger.
5122 std::bitset<max_bits> b(obj);
5123 _OUT << "\"";
5124 if (obj == 0) _OUT << "0";
5125 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5126 if (b[i] == 1) {
5127 bitCount++;
5128 if (bitCount < b.count())
5129 _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL<<i] << " | ";
5130 else
5131 _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL<<i];
5132 }
5133 }
5134 if (commaNeeded)
5135 _OUT << "\"" << ",";
5136 else
5137 _OUT << "\""<< "";
5138 _OUT << std::endl;
5139 }
5140
print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj,const std::string & str,bool commaNeeded=true)5141 static void print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj, const std::string& str, bool commaNeeded=true) {
5142 PRINT_SPACE
5143 if (commaNeeded)
5144 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
5145 else
5146 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
5147 }
print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags * obj,const std::string & str,bool commaNeeded=true)5148 static void print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags * obj, const std::string& str, bool commaNeeded=true) {
5149 PRINT_SPACE
5150 if (commaNeeded)
5151 _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
5152 else
5153 _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
5154 }
5155
print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj,const std::string & str,bool commaNeeded=true)5156 static void print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5157 PRINT_SPACE
5158 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5159 const int max_bits = 64; // We don't expect the number to be larger.
5160 std::bitset<max_bits> b(obj);
5161 _OUT << "\"";
5162 if (obj == 0) _OUT << "0";
5163 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5164 if (b[i] == 1) {
5165 bitCount++;
5166 if (bitCount < b.count())
5167 _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL<<i] << " | ";
5168 else
5169 _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL<<i];
5170 }
5171 }
5172 if (commaNeeded)
5173 _OUT << "\"" << ",";
5174 else
5175 _OUT << "\""<< "";
5176 _OUT << std::endl;
5177 }
print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags * obj,const std::string & str,bool commaNeeded=true)5178 static void print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5179 PRINT_SPACE
5180 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5181 const int max_bits = 64; // We don't expect the number to be larger.
5182 std::bitset<max_bits> b(obj);
5183 _OUT << "\"";
5184 if (obj == 0) _OUT << "0";
5185 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5186 if (b[i] == 1) {
5187 bitCount++;
5188 if (bitCount < b.count())
5189 _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL<<i] << " | ";
5190 else
5191 _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL<<i];
5192 }
5193 }
5194 if (commaNeeded)
5195 _OUT << "\"" << ",";
5196 else
5197 _OUT << "\""<< "";
5198 _OUT << std::endl;
5199 }
5200
print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj,const std::string & str,bool commaNeeded=true)5201 static void print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj, const std::string& str, bool commaNeeded=true) {
5202 PRINT_SPACE
5203 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5204 const int max_bits = 64; // We don't expect the number to be larger.
5205 std::bitset<max_bits> b(obj);
5206 _OUT << "\"";
5207 if (obj == 0) _OUT << "0";
5208 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5209 if (b[i] == 1) {
5210 bitCount++;
5211 if (bitCount < b.count())
5212 _OUT << VkAttachmentDescriptionFlagBits_map[1ULL<<i] << " | ";
5213 else
5214 _OUT << VkAttachmentDescriptionFlagBits_map[1ULL<<i];
5215 }
5216 }
5217 if (commaNeeded)
5218 _OUT << "\"" << ",";
5219 else
5220 _OUT << "\""<< "";
5221 _OUT << std::endl;
5222 }
print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags * obj,const std::string & str,bool commaNeeded=true)5223 static void print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags * obj, const std::string& str, bool commaNeeded=true) {
5224 PRINT_SPACE
5225 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5226 const int max_bits = 64; // We don't expect the number to be larger.
5227 std::bitset<max_bits> b(obj);
5228 _OUT << "\"";
5229 if (obj == 0) _OUT << "0";
5230 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5231 if (b[i] == 1) {
5232 bitCount++;
5233 if (bitCount < b.count())
5234 _OUT << VkAttachmentDescriptionFlagBits_map[1ULL<<i] << " | ";
5235 else
5236 _OUT << VkAttachmentDescriptionFlagBits_map[1ULL<<i];
5237 }
5238 }
5239 if (commaNeeded)
5240 _OUT << "\"" << ",";
5241 else
5242 _OUT << "\""<< "";
5243 _OUT << std::endl;
5244 }
5245
print_VkDependencyFlags(VkDependencyFlags obj,const std::string & str,bool commaNeeded=true)5246 static void print_VkDependencyFlags(VkDependencyFlags obj, const std::string& str, bool commaNeeded=true) {
5247 PRINT_SPACE
5248 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5249 const int max_bits = 64; // We don't expect the number to be larger.
5250 std::bitset<max_bits> b(obj);
5251 _OUT << "\"";
5252 if (obj == 0) _OUT << "0";
5253 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5254 if (b[i] == 1) {
5255 bitCount++;
5256 if (bitCount < b.count())
5257 _OUT << VkDependencyFlagBits_map[1ULL<<i] << " | ";
5258 else
5259 _OUT << VkDependencyFlagBits_map[1ULL<<i];
5260 }
5261 }
5262 if (commaNeeded)
5263 _OUT << "\"" << ",";
5264 else
5265 _OUT << "\""<< "";
5266 _OUT << std::endl;
5267 }
print_VkDependencyFlags(const VkDependencyFlags * obj,const std::string & str,bool commaNeeded=true)5268 static void print_VkDependencyFlags(const VkDependencyFlags * obj, const std::string& str, bool commaNeeded=true) {
5269 PRINT_SPACE
5270 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5271 const int max_bits = 64; // We don't expect the number to be larger.
5272 std::bitset<max_bits> b(obj);
5273 _OUT << "\"";
5274 if (obj == 0) _OUT << "0";
5275 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5276 if (b[i] == 1) {
5277 bitCount++;
5278 if (bitCount < b.count())
5279 _OUT << VkDependencyFlagBits_map[1ULL<<i] << " | ";
5280 else
5281 _OUT << VkDependencyFlagBits_map[1ULL<<i];
5282 }
5283 }
5284 if (commaNeeded)
5285 _OUT << "\"" << ",";
5286 else
5287 _OUT << "\""<< "";
5288 _OUT << std::endl;
5289 }
5290
print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj,const std::string & str,bool commaNeeded=true)5291 static void print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5292 PRINT_SPACE
5293 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5294 const int max_bits = 64; // We don't expect the number to be larger.
5295 std::bitset<max_bits> b(obj);
5296 _OUT << "\"";
5297 if (obj == 0) _OUT << "0";
5298 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5299 if (b[i] == 1) {
5300 bitCount++;
5301 if (bitCount < b.count())
5302 _OUT << VkFramebufferCreateFlagBits_map[1ULL<<i] << " | ";
5303 else
5304 _OUT << VkFramebufferCreateFlagBits_map[1ULL<<i];
5305 }
5306 }
5307 if (commaNeeded)
5308 _OUT << "\"" << ",";
5309 else
5310 _OUT << "\""<< "";
5311 _OUT << std::endl;
5312 }
print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj,const std::string & str,bool commaNeeded=true)5313 static void print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5314 PRINT_SPACE
5315 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5316 const int max_bits = 64; // We don't expect the number to be larger.
5317 std::bitset<max_bits> b(obj);
5318 _OUT << "\"";
5319 if (obj == 0) _OUT << "0";
5320 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5321 if (b[i] == 1) {
5322 bitCount++;
5323 if (bitCount < b.count())
5324 _OUT << VkFramebufferCreateFlagBits_map[1ULL<<i] << " | ";
5325 else
5326 _OUT << VkFramebufferCreateFlagBits_map[1ULL<<i];
5327 }
5328 }
5329 if (commaNeeded)
5330 _OUT << "\"" << ",";
5331 else
5332 _OUT << "\""<< "";
5333 _OUT << std::endl;
5334 }
5335
print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj,const std::string & str,bool commaNeeded=true)5336 static void print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5337 PRINT_SPACE
5338 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5339 const int max_bits = 64; // We don't expect the number to be larger.
5340 std::bitset<max_bits> b(obj);
5341 _OUT << "\"";
5342 if (obj == 0) _OUT << "0";
5343 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5344 if (b[i] == 1) {
5345 bitCount++;
5346 if (bitCount < b.count())
5347 _OUT << VkRenderPassCreateFlagBits_map[1ULL<<i] << " | ";
5348 else
5349 _OUT << VkRenderPassCreateFlagBits_map[1ULL<<i];
5350 }
5351 }
5352 if (commaNeeded)
5353 _OUT << "\"" << ",";
5354 else
5355 _OUT << "\""<< "";
5356 _OUT << std::endl;
5357 }
print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj,const std::string & str,bool commaNeeded=true)5358 static void print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5359 PRINT_SPACE
5360 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5361 const int max_bits = 64; // We don't expect the number to be larger.
5362 std::bitset<max_bits> b(obj);
5363 _OUT << "\"";
5364 if (obj == 0) _OUT << "0";
5365 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5366 if (b[i] == 1) {
5367 bitCount++;
5368 if (bitCount < b.count())
5369 _OUT << VkRenderPassCreateFlagBits_map[1ULL<<i] << " | ";
5370 else
5371 _OUT << VkRenderPassCreateFlagBits_map[1ULL<<i];
5372 }
5373 }
5374 if (commaNeeded)
5375 _OUT << "\"" << ",";
5376 else
5377 _OUT << "\""<< "";
5378 _OUT << std::endl;
5379 }
5380
print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj,const std::string & str,bool commaNeeded=true)5381 static void print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj, const std::string& str, bool commaNeeded=true) {
5382 PRINT_SPACE
5383 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5384 const int max_bits = 64; // We don't expect the number to be larger.
5385 std::bitset<max_bits> b(obj);
5386 _OUT << "\"";
5387 if (obj == 0) _OUT << "0";
5388 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5389 if (b[i] == 1) {
5390 bitCount++;
5391 if (bitCount < b.count())
5392 _OUT << VkSubpassDescriptionFlagBits_map[1ULL<<i] << " | ";
5393 else
5394 _OUT << VkSubpassDescriptionFlagBits_map[1ULL<<i];
5395 }
5396 }
5397 if (commaNeeded)
5398 _OUT << "\"" << ",";
5399 else
5400 _OUT << "\""<< "";
5401 _OUT << std::endl;
5402 }
print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * obj,const std::string & str,bool commaNeeded=true)5403 static void print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * obj, const std::string& str, bool commaNeeded=true) {
5404 PRINT_SPACE
5405 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5406 const int max_bits = 64; // We don't expect the number to be larger.
5407 std::bitset<max_bits> b(obj);
5408 _OUT << "\"";
5409 if (obj == 0) _OUT << "0";
5410 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5411 if (b[i] == 1) {
5412 bitCount++;
5413 if (bitCount < b.count())
5414 _OUT << VkSubpassDescriptionFlagBits_map[1ULL<<i] << " | ";
5415 else
5416 _OUT << VkSubpassDescriptionFlagBits_map[1ULL<<i];
5417 }
5418 }
5419 if (commaNeeded)
5420 _OUT << "\"" << ",";
5421 else
5422 _OUT << "\""<< "";
5423 _OUT << std::endl;
5424 }
5425
print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)5426 static void print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5427 PRINT_SPACE
5428 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5429 const int max_bits = 64; // We don't expect the number to be larger.
5430 std::bitset<max_bits> b(obj);
5431 _OUT << "\"";
5432 if (obj == 0) _OUT << "0";
5433 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5434 if (b[i] == 1) {
5435 bitCount++;
5436 if (bitCount < b.count())
5437 _OUT << VkCommandPoolCreateFlagBits_map[1ULL<<i] << " | ";
5438 else
5439 _OUT << VkCommandPoolCreateFlagBits_map[1ULL<<i];
5440 }
5441 }
5442 if (commaNeeded)
5443 _OUT << "\"" << ",";
5444 else
5445 _OUT << "\""<< "";
5446 _OUT << std::endl;
5447 }
print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)5448 static void print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5449 PRINT_SPACE
5450 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5451 const int max_bits = 64; // We don't expect the number to be larger.
5452 std::bitset<max_bits> b(obj);
5453 _OUT << "\"";
5454 if (obj == 0) _OUT << "0";
5455 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5456 if (b[i] == 1) {
5457 bitCount++;
5458 if (bitCount < b.count())
5459 _OUT << VkCommandPoolCreateFlagBits_map[1ULL<<i] << " | ";
5460 else
5461 _OUT << VkCommandPoolCreateFlagBits_map[1ULL<<i];
5462 }
5463 }
5464 if (commaNeeded)
5465 _OUT << "\"" << ",";
5466 else
5467 _OUT << "\""<< "";
5468 _OUT << std::endl;
5469 }
5470
print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj,const std::string & str,bool commaNeeded=true)5471 static void print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj, const std::string& str, bool commaNeeded=true) {
5472 PRINT_SPACE
5473 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5474 const int max_bits = 64; // We don't expect the number to be larger.
5475 std::bitset<max_bits> b(obj);
5476 _OUT << "\"";
5477 if (obj == 0) _OUT << "0";
5478 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5479 if (b[i] == 1) {
5480 bitCount++;
5481 if (bitCount < b.count())
5482 _OUT << VkCommandPoolResetFlagBits_map[1ULL<<i] << " | ";
5483 else
5484 _OUT << VkCommandPoolResetFlagBits_map[1ULL<<i];
5485 }
5486 }
5487 if (commaNeeded)
5488 _OUT << "\"" << ",";
5489 else
5490 _OUT << "\""<< "";
5491 _OUT << std::endl;
5492 }
print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj,const std::string & str,bool commaNeeded=true)5493 static void print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj, const std::string& str, bool commaNeeded=true) {
5494 PRINT_SPACE
5495 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5496 const int max_bits = 64; // We don't expect the number to be larger.
5497 std::bitset<max_bits> b(obj);
5498 _OUT << "\"";
5499 if (obj == 0) _OUT << "0";
5500 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5501 if (b[i] == 1) {
5502 bitCount++;
5503 if (bitCount < b.count())
5504 _OUT << VkCommandPoolResetFlagBits_map[1ULL<<i] << " | ";
5505 else
5506 _OUT << VkCommandPoolResetFlagBits_map[1ULL<<i];
5507 }
5508 }
5509 if (commaNeeded)
5510 _OUT << "\"" << ",";
5511 else
5512 _OUT << "\""<< "";
5513 _OUT << std::endl;
5514 }
5515
print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj,const std::string & str,bool commaNeeded=true)5516 static void print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj, const std::string& str, bool commaNeeded=true) {
5517 PRINT_SPACE
5518 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5519 const int max_bits = 64; // We don't expect the number to be larger.
5520 std::bitset<max_bits> b(obj);
5521 _OUT << "\"";
5522 if (obj == 0) _OUT << "0";
5523 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5524 if (b[i] == 1) {
5525 bitCount++;
5526 if (bitCount < b.count())
5527 _OUT << VkCommandBufferUsageFlagBits_map[1ULL<<i] << " | ";
5528 else
5529 _OUT << VkCommandBufferUsageFlagBits_map[1ULL<<i];
5530 }
5531 }
5532 if (commaNeeded)
5533 _OUT << "\"" << ",";
5534 else
5535 _OUT << "\""<< "";
5536 _OUT << std::endl;
5537 }
print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * obj,const std::string & str,bool commaNeeded=true)5538 static void print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
5539 PRINT_SPACE
5540 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5541 const int max_bits = 64; // We don't expect the number to be larger.
5542 std::bitset<max_bits> b(obj);
5543 _OUT << "\"";
5544 if (obj == 0) _OUT << "0";
5545 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5546 if (b[i] == 1) {
5547 bitCount++;
5548 if (bitCount < b.count())
5549 _OUT << VkCommandBufferUsageFlagBits_map[1ULL<<i] << " | ";
5550 else
5551 _OUT << VkCommandBufferUsageFlagBits_map[1ULL<<i];
5552 }
5553 }
5554 if (commaNeeded)
5555 _OUT << "\"" << ",";
5556 else
5557 _OUT << "\""<< "";
5558 _OUT << std::endl;
5559 }
5560
print_VkQueryControlFlags(VkQueryControlFlags obj,const std::string & str,bool commaNeeded=true)5561 static void print_VkQueryControlFlags(VkQueryControlFlags obj, const std::string& str, bool commaNeeded=true) {
5562 PRINT_SPACE
5563 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5564 const int max_bits = 64; // We don't expect the number to be larger.
5565 std::bitset<max_bits> b(obj);
5566 _OUT << "\"";
5567 if (obj == 0) _OUT << "0";
5568 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5569 if (b[i] == 1) {
5570 bitCount++;
5571 if (bitCount < b.count())
5572 _OUT << VkQueryControlFlagBits_map[1ULL<<i] << " | ";
5573 else
5574 _OUT << VkQueryControlFlagBits_map[1ULL<<i];
5575 }
5576 }
5577 if (commaNeeded)
5578 _OUT << "\"" << ",";
5579 else
5580 _OUT << "\""<< "";
5581 _OUT << std::endl;
5582 }
print_VkQueryControlFlags(const VkQueryControlFlags * obj,const std::string & str,bool commaNeeded=true)5583 static void print_VkQueryControlFlags(const VkQueryControlFlags * obj, const std::string& str, bool commaNeeded=true) {
5584 PRINT_SPACE
5585 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5586 const int max_bits = 64; // We don't expect the number to be larger.
5587 std::bitset<max_bits> b(obj);
5588 _OUT << "\"";
5589 if (obj == 0) _OUT << "0";
5590 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5591 if (b[i] == 1) {
5592 bitCount++;
5593 if (bitCount < b.count())
5594 _OUT << VkQueryControlFlagBits_map[1ULL<<i] << " | ";
5595 else
5596 _OUT << VkQueryControlFlagBits_map[1ULL<<i];
5597 }
5598 }
5599 if (commaNeeded)
5600 _OUT << "\"" << ",";
5601 else
5602 _OUT << "\""<< "";
5603 _OUT << std::endl;
5604 }
5605
print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj,const std::string & str,bool commaNeeded=true)5606 static void print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj, const std::string& str, bool commaNeeded=true) {
5607 PRINT_SPACE
5608 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5609 const int max_bits = 64; // We don't expect the number to be larger.
5610 std::bitset<max_bits> b(obj);
5611 _OUT << "\"";
5612 if (obj == 0) _OUT << "0";
5613 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5614 if (b[i] == 1) {
5615 bitCount++;
5616 if (bitCount < b.count())
5617 _OUT << VkCommandBufferResetFlagBits_map[1ULL<<i] << " | ";
5618 else
5619 _OUT << VkCommandBufferResetFlagBits_map[1ULL<<i];
5620 }
5621 }
5622 if (commaNeeded)
5623 _OUT << "\"" << ",";
5624 else
5625 _OUT << "\""<< "";
5626 _OUT << std::endl;
5627 }
print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * obj,const std::string & str,bool commaNeeded=true)5628 static void print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * obj, const std::string& str, bool commaNeeded=true) {
5629 PRINT_SPACE
5630 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5631 const int max_bits = 64; // We don't expect the number to be larger.
5632 std::bitset<max_bits> b(obj);
5633 _OUT << "\"";
5634 if (obj == 0) _OUT << "0";
5635 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5636 if (b[i] == 1) {
5637 bitCount++;
5638 if (bitCount < b.count())
5639 _OUT << VkCommandBufferResetFlagBits_map[1ULL<<i] << " | ";
5640 else
5641 _OUT << VkCommandBufferResetFlagBits_map[1ULL<<i];
5642 }
5643 }
5644 if (commaNeeded)
5645 _OUT << "\"" << ",";
5646 else
5647 _OUT << "\""<< "";
5648 _OUT << std::endl;
5649 }
5650
print_VkStencilFaceFlags(VkStencilFaceFlags obj,const std::string & str,bool commaNeeded=true)5651 static void print_VkStencilFaceFlags(VkStencilFaceFlags obj, const std::string& str, bool commaNeeded=true) {
5652 PRINT_SPACE
5653 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5654 const int max_bits = 64; // We don't expect the number to be larger.
5655 std::bitset<max_bits> b(obj);
5656 _OUT << "\"";
5657 if (obj == 0) _OUT << "0";
5658 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5659 if (b[i] == 1) {
5660 bitCount++;
5661 if (bitCount < b.count())
5662 _OUT << VkStencilFaceFlagBits_map[1ULL<<i] << " | ";
5663 else
5664 _OUT << VkStencilFaceFlagBits_map[1ULL<<i];
5665 }
5666 }
5667 if (commaNeeded)
5668 _OUT << "\"" << ",";
5669 else
5670 _OUT << "\""<< "";
5671 _OUT << std::endl;
5672 }
print_VkStencilFaceFlags(const VkStencilFaceFlags * obj,const std::string & str,bool commaNeeded=true)5673 static void print_VkStencilFaceFlags(const VkStencilFaceFlags * obj, const std::string& str, bool commaNeeded=true) {
5674 PRINT_SPACE
5675 if (str != "") _OUT << "\"" << str << "\"" << " : ";
5676 const int max_bits = 64; // We don't expect the number to be larger.
5677 std::bitset<max_bits> b(obj);
5678 _OUT << "\"";
5679 if (obj == 0) _OUT << "0";
5680 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5681 if (b[i] == 1) {
5682 bitCount++;
5683 if (bitCount < b.count())
5684 _OUT << VkStencilFaceFlagBits_map[1ULL<<i] << " | ";
5685 else
5686 _OUT << VkStencilFaceFlagBits_map[1ULL<<i];
5687 }
5688 }
5689 if (commaNeeded)
5690 _OUT << "\"" << ",";
5691 else
5692 _OUT << "\""<< "";
5693 _OUT << std::endl;
5694 }
5695
print_VkExtent2D(VkExtent2D obj,const std::string & s,bool commaNeeded=true)5696 static void print_VkExtent2D(VkExtent2D obj, const std::string& s, bool commaNeeded=true) {
5697 PRINT_SPACE
5698 _OUT << "{" << std::endl;
5699 INDENT(4);
5700
5701 print_uint32_t(obj.width, "width", 1);
5702
5703 print_uint32_t(obj.height, "height", 0);
5704
5705 INDENT(-4);
5706 PRINT_SPACE
5707 if (commaNeeded)
5708 _OUT << "}," << std::endl;
5709 else
5710 _OUT << "}" << std::endl;
5711 }
print_VkExtent2D(const VkExtent2D * obj,const std::string & s,bool commaNeeded=true)5712 static void print_VkExtent2D(const VkExtent2D * obj, const std::string& s, bool commaNeeded=true) {
5713 PRINT_SPACE
5714 _OUT << "{" << std::endl;
5715 INDENT(4);
5716
5717 print_uint32_t(obj->width, "width", 1);
5718
5719 print_uint32_t(obj->height, "height", 0);
5720
5721 INDENT(-4);
5722 PRINT_SPACE
5723 if (commaNeeded)
5724 _OUT << "}," << std::endl;
5725 else
5726 _OUT << "}" << std::endl;
5727 }
5728
print_VkExtent3D(VkExtent3D obj,const std::string & s,bool commaNeeded=true)5729 static void print_VkExtent3D(VkExtent3D obj, const std::string& s, bool commaNeeded=true) {
5730 PRINT_SPACE
5731 _OUT << "{" << std::endl;
5732 INDENT(4);
5733
5734 print_uint32_t(obj.width, "width", 1);
5735
5736 print_uint32_t(obj.height, "height", 1);
5737
5738 print_uint32_t(obj.depth, "depth", 0);
5739
5740 INDENT(-4);
5741 PRINT_SPACE
5742 if (commaNeeded)
5743 _OUT << "}," << std::endl;
5744 else
5745 _OUT << "}" << std::endl;
5746 }
print_VkExtent3D(const VkExtent3D * obj,const std::string & s,bool commaNeeded=true)5747 static void print_VkExtent3D(const VkExtent3D * obj, const std::string& s, bool commaNeeded=true) {
5748 PRINT_SPACE
5749 _OUT << "{" << std::endl;
5750 INDENT(4);
5751
5752 print_uint32_t(obj->width, "width", 1);
5753
5754 print_uint32_t(obj->height, "height", 1);
5755
5756 print_uint32_t(obj->depth, "depth", 0);
5757
5758 INDENT(-4);
5759 PRINT_SPACE
5760 if (commaNeeded)
5761 _OUT << "}," << std::endl;
5762 else
5763 _OUT << "}" << std::endl;
5764 }
5765
print_VkOffset2D(VkOffset2D obj,const std::string & s,bool commaNeeded=true)5766 static void print_VkOffset2D(VkOffset2D obj, const std::string& s, bool commaNeeded=true) {
5767 PRINT_SPACE
5768 _OUT << "{" << std::endl;
5769 INDENT(4);
5770
5771 print_int32_t(obj.x, "x", 1);
5772
5773 print_int32_t(obj.y, "y", 0);
5774
5775 INDENT(-4);
5776 PRINT_SPACE
5777 if (commaNeeded)
5778 _OUT << "}," << std::endl;
5779 else
5780 _OUT << "}" << std::endl;
5781 }
print_VkOffset2D(const VkOffset2D * obj,const std::string & s,bool commaNeeded=true)5782 static void print_VkOffset2D(const VkOffset2D * obj, const std::string& s, bool commaNeeded=true) {
5783 PRINT_SPACE
5784 _OUT << "{" << std::endl;
5785 INDENT(4);
5786
5787 print_int32_t(obj->x, "x", 1);
5788
5789 print_int32_t(obj->y, "y", 0);
5790
5791 INDENT(-4);
5792 PRINT_SPACE
5793 if (commaNeeded)
5794 _OUT << "}," << std::endl;
5795 else
5796 _OUT << "}" << std::endl;
5797 }
5798
print_VkOffset3D(VkOffset3D obj,const std::string & s,bool commaNeeded=true)5799 static void print_VkOffset3D(VkOffset3D obj, const std::string& s, bool commaNeeded=true) {
5800 PRINT_SPACE
5801 _OUT << "{" << std::endl;
5802 INDENT(4);
5803
5804 print_int32_t(obj.x, "x", 1);
5805
5806 print_int32_t(obj.y, "y", 1);
5807
5808 print_int32_t(obj.z, "z", 0);
5809
5810 INDENT(-4);
5811 PRINT_SPACE
5812 if (commaNeeded)
5813 _OUT << "}," << std::endl;
5814 else
5815 _OUT << "}" << std::endl;
5816 }
print_VkOffset3D(const VkOffset3D * obj,const std::string & s,bool commaNeeded=true)5817 static void print_VkOffset3D(const VkOffset3D * obj, const std::string& s, bool commaNeeded=true) {
5818 PRINT_SPACE
5819 _OUT << "{" << std::endl;
5820 INDENT(4);
5821
5822 print_int32_t(obj->x, "x", 1);
5823
5824 print_int32_t(obj->y, "y", 1);
5825
5826 print_int32_t(obj->z, "z", 0);
5827
5828 INDENT(-4);
5829 PRINT_SPACE
5830 if (commaNeeded)
5831 _OUT << "}," << std::endl;
5832 else
5833 _OUT << "}" << std::endl;
5834 }
5835
print_VkRect2D(VkRect2D obj,const std::string & s,bool commaNeeded=true)5836 static void print_VkRect2D(VkRect2D obj, const std::string& s, bool commaNeeded=true) {
5837 PRINT_SPACE
5838 _OUT << "{" << std::endl;
5839 INDENT(4);
5840
5841 PRINT_SPACE
5842 _OUT << "\"offset\": " << std::endl;
5843 {
5844 print_VkOffset2D(obj.offset, "offset", 1);
5845 }
5846
5847 PRINT_SPACE
5848 _OUT << "\"extent\": " << std::endl;
5849 {
5850 print_VkExtent2D(obj.extent, "extent", 0);
5851 }
5852
5853 INDENT(-4);
5854 PRINT_SPACE
5855 if (commaNeeded)
5856 _OUT << "}," << std::endl;
5857 else
5858 _OUT << "}" << std::endl;
5859 }
print_VkRect2D(const VkRect2D * obj,const std::string & s,bool commaNeeded=true)5860 static void print_VkRect2D(const VkRect2D * obj, const std::string& s, bool commaNeeded=true) {
5861 PRINT_SPACE
5862 _OUT << "{" << std::endl;
5863 INDENT(4);
5864
5865 PRINT_SPACE
5866 _OUT << "\"offset\": " << std::endl;
5867 {
5868 print_VkOffset2D(obj->offset, "offset", 1);
5869 }
5870
5871 PRINT_SPACE
5872 _OUT << "\"extent\": " << std::endl;
5873 {
5874 print_VkExtent2D(obj->extent, "extent", 0);
5875 }
5876
5877 INDENT(-4);
5878 PRINT_SPACE
5879 if (commaNeeded)
5880 _OUT << "}," << std::endl;
5881 else
5882 _OUT << "}" << std::endl;
5883 }
5884
print_VkBaseInStructure(VkBaseInStructure obj,const std::string & s,bool commaNeeded=true)5885 static void print_VkBaseInStructure(VkBaseInStructure obj, const std::string& s, bool commaNeeded=true) {
5886 PRINT_SPACE
5887 _OUT << "{" << std::endl;
5888 INDENT(4);
5889
5890 print_VkStructureType(obj.sType, "sType", 1);
5891
5892 if (obj.pNext) {
5893 dumpPNextChain(obj.pNext);
5894 } else {
5895 PRINT_SPACE
5896 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5897 }
5898
5899 INDENT(-4);
5900 PRINT_SPACE
5901 if (commaNeeded)
5902 _OUT << "}," << std::endl;
5903 else
5904 _OUT << "}" << std::endl;
5905 }
print_VkBaseInStructure(const VkBaseInStructure * obj,const std::string & s,bool commaNeeded=true)5906 static void print_VkBaseInStructure(const VkBaseInStructure * obj, const std::string& s, bool commaNeeded=true) {
5907 PRINT_SPACE
5908 _OUT << "{" << std::endl;
5909 INDENT(4);
5910
5911 print_VkStructureType(obj->sType, "sType", 1);
5912
5913 if (obj->pNext) {
5914 dumpPNextChain(obj->pNext);
5915 } else {
5916 PRINT_SPACE
5917 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5918 }
5919
5920 INDENT(-4);
5921 PRINT_SPACE
5922 if (commaNeeded)
5923 _OUT << "}," << std::endl;
5924 else
5925 _OUT << "}" << std::endl;
5926 }
5927
print_VkBaseOutStructure(VkBaseOutStructure obj,const std::string & s,bool commaNeeded=true)5928 static void print_VkBaseOutStructure(VkBaseOutStructure obj, const std::string& s, bool commaNeeded=true) {
5929 PRINT_SPACE
5930 _OUT << "{" << std::endl;
5931 INDENT(4);
5932
5933 print_VkStructureType(obj.sType, "sType", 1);
5934
5935 if (obj.pNext) {
5936 dumpPNextChain(obj.pNext);
5937 } else {
5938 PRINT_SPACE
5939 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5940 }
5941
5942 INDENT(-4);
5943 PRINT_SPACE
5944 if (commaNeeded)
5945 _OUT << "}," << std::endl;
5946 else
5947 _OUT << "}" << std::endl;
5948 }
print_VkBaseOutStructure(const VkBaseOutStructure * obj,const std::string & s,bool commaNeeded=true)5949 static void print_VkBaseOutStructure(const VkBaseOutStructure * obj, const std::string& s, bool commaNeeded=true) {
5950 PRINT_SPACE
5951 _OUT << "{" << std::endl;
5952 INDENT(4);
5953
5954 print_VkStructureType(obj->sType, "sType", 1);
5955
5956 if (obj->pNext) {
5957 dumpPNextChain(obj->pNext);
5958 } else {
5959 PRINT_SPACE
5960 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5961 }
5962
5963 INDENT(-4);
5964 PRINT_SPACE
5965 if (commaNeeded)
5966 _OUT << "}," << std::endl;
5967 else
5968 _OUT << "}" << std::endl;
5969 }
5970
print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj,const std::string & s,bool commaNeeded=true)5971 static void print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
5972 PRINT_SPACE
5973 _OUT << "{" << std::endl;
5974 INDENT(4);
5975
5976 print_VkStructureType(obj.sType, "sType", 1);
5977
5978 if (obj.pNext) {
5979 dumpPNextChain(obj.pNext);
5980 } else {
5981 PRINT_SPACE
5982 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5983 }
5984
5985 print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
5986
5987 print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
5988
5989 print_uint32_t(obj.srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
5990
5991 print_uint32_t(obj.dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
5992
5993 // CTS : required value
5994 PRINT_SPACE _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
5995
5996 print_VkDeviceSize(obj.offset, "offset", 1);
5997
5998 print_VkDeviceSize(obj.size, "size", 0);
5999
6000 INDENT(-4);
6001 PRINT_SPACE
6002 if (commaNeeded)
6003 _OUT << "}," << std::endl;
6004 else
6005 _OUT << "}" << std::endl;
6006 }
print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)6007 static void print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
6008 PRINT_SPACE
6009 _OUT << "{" << std::endl;
6010 INDENT(4);
6011
6012 print_VkStructureType(obj->sType, "sType", 1);
6013
6014 if (obj->pNext) {
6015 dumpPNextChain(obj->pNext);
6016 } else {
6017 PRINT_SPACE
6018 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6019 }
6020
6021 print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
6022
6023 print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
6024
6025 print_uint32_t(obj->srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
6026
6027 print_uint32_t(obj->dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
6028
6029 // CTS : required value
6030 PRINT_SPACE _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
6031
6032 print_VkDeviceSize(obj->offset, "offset", 1);
6033
6034 print_VkDeviceSize(obj->size, "size", 0);
6035
6036 INDENT(-4);
6037 PRINT_SPACE
6038 if (commaNeeded)
6039 _OUT << "}," << std::endl;
6040 else
6041 _OUT << "}" << std::endl;
6042 }
6043
print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj,const std::string & s,bool commaNeeded=true)6044 static void print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
6045 PRINT_SPACE
6046 _OUT << "{" << std::endl;
6047 INDENT(4);
6048
6049 print_uint32_t(obj.x, "x", 1);
6050
6051 print_uint32_t(obj.y, "y", 1);
6052
6053 print_uint32_t(obj.z, "z", 0);
6054
6055 INDENT(-4);
6056 PRINT_SPACE
6057 if (commaNeeded)
6058 _OUT << "}," << std::endl;
6059 else
6060 _OUT << "}" << std::endl;
6061 }
print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * obj,const std::string & s,bool commaNeeded=true)6062 static void print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
6063 PRINT_SPACE
6064 _OUT << "{" << std::endl;
6065 INDENT(4);
6066
6067 print_uint32_t(obj->x, "x", 1);
6068
6069 print_uint32_t(obj->y, "y", 1);
6070
6071 print_uint32_t(obj->z, "z", 0);
6072
6073 INDENT(-4);
6074 PRINT_SPACE
6075 if (commaNeeded)
6076 _OUT << "}," << std::endl;
6077 else
6078 _OUT << "}" << std::endl;
6079 }
6080
print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj,const std::string & s,bool commaNeeded=true)6081 static void print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
6082 PRINT_SPACE
6083 _OUT << "{" << std::endl;
6084 INDENT(4);
6085
6086 print_uint32_t(obj.indexCount, "indexCount", 1);
6087
6088 print_uint32_t(obj.instanceCount, "instanceCount", 1);
6089
6090 print_uint32_t(obj.firstIndex, "firstIndex", 1);
6091
6092 print_int32_t(obj.vertexOffset, "vertexOffset", 1);
6093
6094 print_uint32_t(obj.firstInstance, "firstInstance", 0);
6095
6096 INDENT(-4);
6097 PRINT_SPACE
6098 if (commaNeeded)
6099 _OUT << "}," << std::endl;
6100 else
6101 _OUT << "}" << std::endl;
6102 }
print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * obj,const std::string & s,bool commaNeeded=true)6103 static void print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
6104 PRINT_SPACE
6105 _OUT << "{" << std::endl;
6106 INDENT(4);
6107
6108 print_uint32_t(obj->indexCount, "indexCount", 1);
6109
6110 print_uint32_t(obj->instanceCount, "instanceCount", 1);
6111
6112 print_uint32_t(obj->firstIndex, "firstIndex", 1);
6113
6114 print_int32_t(obj->vertexOffset, "vertexOffset", 1);
6115
6116 print_uint32_t(obj->firstInstance, "firstInstance", 0);
6117
6118 INDENT(-4);
6119 PRINT_SPACE
6120 if (commaNeeded)
6121 _OUT << "}," << std::endl;
6122 else
6123 _OUT << "}" << std::endl;
6124 }
6125
print_VkDrawIndirectCommand(VkDrawIndirectCommand obj,const std::string & s,bool commaNeeded=true)6126 static void print_VkDrawIndirectCommand(VkDrawIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
6127 PRINT_SPACE
6128 _OUT << "{" << std::endl;
6129 INDENT(4);
6130
6131 print_uint32_t(obj.vertexCount, "vertexCount", 1);
6132
6133 print_uint32_t(obj.instanceCount, "instanceCount", 1);
6134
6135 print_uint32_t(obj.firstVertex, "firstVertex", 1);
6136
6137 print_uint32_t(obj.firstInstance, "firstInstance", 0);
6138
6139 INDENT(-4);
6140 PRINT_SPACE
6141 if (commaNeeded)
6142 _OUT << "}," << std::endl;
6143 else
6144 _OUT << "}" << std::endl;
6145 }
print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj,const std::string & s,bool commaNeeded=true)6146 static void print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
6147 PRINT_SPACE
6148 _OUT << "{" << std::endl;
6149 INDENT(4);
6150
6151 print_uint32_t(obj->vertexCount, "vertexCount", 1);
6152
6153 print_uint32_t(obj->instanceCount, "instanceCount", 1);
6154
6155 print_uint32_t(obj->firstVertex, "firstVertex", 1);
6156
6157 print_uint32_t(obj->firstInstance, "firstInstance", 0);
6158
6159 INDENT(-4);
6160 PRINT_SPACE
6161 if (commaNeeded)
6162 _OUT << "}," << std::endl;
6163 else
6164 _OUT << "}" << std::endl;
6165 }
6166
print_VkImageSubresourceRange(VkImageSubresourceRange obj,const std::string & s,bool commaNeeded=true)6167 static void print_VkImageSubresourceRange(VkImageSubresourceRange obj, const std::string& s, bool commaNeeded=true) {
6168 PRINT_SPACE
6169 _OUT << "{" << std::endl;
6170 INDENT(4);
6171
6172 print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 1);
6173
6174 print_uint32_t(obj.baseMipLevel, "baseMipLevel", 1);
6175
6176 print_uint32_t(obj.levelCount, "levelCount", 1);
6177
6178 print_uint32_t(obj.baseArrayLayer, "baseArrayLayer", 1);
6179
6180 print_uint32_t(obj.layerCount, "layerCount", 0);
6181
6182 INDENT(-4);
6183 PRINT_SPACE
6184 if (commaNeeded)
6185 _OUT << "}," << std::endl;
6186 else
6187 _OUT << "}" << std::endl;
6188 }
print_VkImageSubresourceRange(const VkImageSubresourceRange * obj,const std::string & s,bool commaNeeded=true)6189 static void print_VkImageSubresourceRange(const VkImageSubresourceRange * obj, const std::string& s, bool commaNeeded=true) {
6190 PRINT_SPACE
6191 _OUT << "{" << std::endl;
6192 INDENT(4);
6193
6194 print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 1);
6195
6196 print_uint32_t(obj->baseMipLevel, "baseMipLevel", 1);
6197
6198 print_uint32_t(obj->levelCount, "levelCount", 1);
6199
6200 print_uint32_t(obj->baseArrayLayer, "baseArrayLayer", 1);
6201
6202 print_uint32_t(obj->layerCount, "layerCount", 0);
6203
6204 INDENT(-4);
6205 PRINT_SPACE
6206 if (commaNeeded)
6207 _OUT << "}," << std::endl;
6208 else
6209 _OUT << "}" << std::endl;
6210 }
6211
print_VkImageMemoryBarrier(VkImageMemoryBarrier obj,const std::string & s,bool commaNeeded=true)6212 static void print_VkImageMemoryBarrier(VkImageMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
6213 PRINT_SPACE
6214 _OUT << "{" << std::endl;
6215 INDENT(4);
6216
6217 print_VkStructureType(obj.sType, "sType", 1);
6218
6219 if (obj.pNext) {
6220 dumpPNextChain(obj.pNext);
6221 } else {
6222 PRINT_SPACE
6223 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6224 }
6225
6226 print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
6227
6228 print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
6229
6230 print_VkImageLayout(obj.oldLayout, "oldLayout", 1);
6231
6232 print_VkImageLayout(obj.newLayout, "newLayout", 1);
6233
6234 print_uint32_t(obj.srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
6235
6236 print_uint32_t(obj.dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
6237
6238 // CTS : required value
6239 PRINT_SPACE _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
6240
6241 PRINT_SPACE
6242 _OUT << "\"subresourceRange\": " << std::endl;
6243 {
6244 print_VkImageSubresourceRange(obj.subresourceRange, "subresourceRange", 0);
6245 }
6246
6247 INDENT(-4);
6248 PRINT_SPACE
6249 if (commaNeeded)
6250 _OUT << "}," << std::endl;
6251 else
6252 _OUT << "}" << std::endl;
6253 }
print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)6254 static void print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
6255 PRINT_SPACE
6256 _OUT << "{" << std::endl;
6257 INDENT(4);
6258
6259 print_VkStructureType(obj->sType, "sType", 1);
6260
6261 if (obj->pNext) {
6262 dumpPNextChain(obj->pNext);
6263 } else {
6264 PRINT_SPACE
6265 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6266 }
6267
6268 print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
6269
6270 print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
6271
6272 print_VkImageLayout(obj->oldLayout, "oldLayout", 1);
6273
6274 print_VkImageLayout(obj->newLayout, "newLayout", 1);
6275
6276 print_uint32_t(obj->srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
6277
6278 print_uint32_t(obj->dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
6279
6280 // CTS : required value
6281 PRINT_SPACE _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
6282
6283 PRINT_SPACE
6284 _OUT << "\"subresourceRange\": " << std::endl;
6285 {
6286 print_VkImageSubresourceRange(obj->subresourceRange, "subresourceRange", 0);
6287 }
6288
6289 INDENT(-4);
6290 PRINT_SPACE
6291 if (commaNeeded)
6292 _OUT << "}," << std::endl;
6293 else
6294 _OUT << "}" << std::endl;
6295 }
6296
print_VkMemoryBarrier(VkMemoryBarrier obj,const std::string & s,bool commaNeeded=true)6297 static void print_VkMemoryBarrier(VkMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
6298 PRINT_SPACE
6299 _OUT << "{" << std::endl;
6300 INDENT(4);
6301
6302 print_VkStructureType(obj.sType, "sType", 1);
6303
6304 if (obj.pNext) {
6305 dumpPNextChain(obj.pNext);
6306 } else {
6307 PRINT_SPACE
6308 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6309 }
6310
6311 print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
6312
6313 print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 0);
6314
6315 INDENT(-4);
6316 PRINT_SPACE
6317 if (commaNeeded)
6318 _OUT << "}," << std::endl;
6319 else
6320 _OUT << "}" << std::endl;
6321 }
print_VkMemoryBarrier(const VkMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)6322 static void print_VkMemoryBarrier(const VkMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
6323 PRINT_SPACE
6324 _OUT << "{" << std::endl;
6325 INDENT(4);
6326
6327 print_VkStructureType(obj->sType, "sType", 1);
6328
6329 if (obj->pNext) {
6330 dumpPNextChain(obj->pNext);
6331 } else {
6332 PRINT_SPACE
6333 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6334 }
6335
6336 print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
6337
6338 print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 0);
6339
6340 INDENT(-4);
6341 PRINT_SPACE
6342 if (commaNeeded)
6343 _OUT << "}," << std::endl;
6344 else
6345 _OUT << "}" << std::endl;
6346 }
6347
print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj,const std::string & s,bool commaNeeded=true)6348 static void print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj, const std::string& s, bool commaNeeded=true) {
6349 PRINT_SPACE
6350 _OUT << "{" << std::endl;
6351 INDENT(4);
6352
6353 print_uint32_t(obj.headerSize, "headerSize", 1);
6354
6355 print_VkPipelineCacheHeaderVersion(obj.headerVersion, "headerVersion", 1);
6356
6357 print_uint32_t(obj.vendorID, "vendorID", 1);
6358
6359 print_uint32_t(obj.deviceID, "deviceID", 1);
6360
6361 PRINT_SPACE
6362 _OUT << "\"pipelineCacheUUID\":" << std::endl;
6363 PRINT_SPACE
6364 if (obj.pipelineCacheUUID) {
6365 _OUT << "[" << std::endl;
6366 for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
6367 bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
6368 print_uint8_t(obj.pipelineCacheUUID[i], "", isCommaNeeded);
6369 }
6370 PRINT_SPACE
6371 _OUT << "]" << "" << std::endl;
6372 } else {
6373 _OUT << "\"NULL\"" << "" << std::endl;
6374 }
6375
6376 INDENT(-4);
6377 PRINT_SPACE
6378 if (commaNeeded)
6379 _OUT << "}," << std::endl;
6380 else
6381 _OUT << "}" << std::endl;
6382 }
print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * obj,const std::string & s,bool commaNeeded=true)6383 static void print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * obj, const std::string& s, bool commaNeeded=true) {
6384 PRINT_SPACE
6385 _OUT << "{" << std::endl;
6386 INDENT(4);
6387
6388 print_uint32_t(obj->headerSize, "headerSize", 1);
6389
6390 print_VkPipelineCacheHeaderVersion(obj->headerVersion, "headerVersion", 1);
6391
6392 print_uint32_t(obj->vendorID, "vendorID", 1);
6393
6394 print_uint32_t(obj->deviceID, "deviceID", 1);
6395
6396 PRINT_SPACE
6397 _OUT << "\"pipelineCacheUUID\":" << std::endl;
6398 PRINT_SPACE
6399 if (obj->pipelineCacheUUID) {
6400 _OUT << "[" << std::endl;
6401 for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
6402 bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
6403 print_uint8_t(obj->pipelineCacheUUID[i], "", isCommaNeeded);
6404 }
6405 PRINT_SPACE
6406 _OUT << "]" << "" << std::endl;
6407 } else {
6408 _OUT << "\"NULL\"" << "" << std::endl;
6409 }
6410
6411 INDENT(-4);
6412 PRINT_SPACE
6413 if (commaNeeded)
6414 _OUT << "}," << std::endl;
6415 else
6416 _OUT << "}" << std::endl;
6417 }
6418
print_VkAllocationCallbacks(VkAllocationCallbacks obj,const std::string & s,bool commaNeeded=true)6419 static void print_VkAllocationCallbacks(VkAllocationCallbacks obj, const std::string& s, bool commaNeeded=true) {
6420 PRINT_SPACE
6421 _OUT << "{" << std::endl;
6422 INDENT(4);
6423
6424 /** Note: Ignoring void* data. **/
6425
6426 /** Note: Ignoring function pointer (PFN_vkAllocationFunction). **/
6427
6428 /** Note: Ignoring function pointer (PFN_vkReallocationFunction). **/
6429
6430 /** Note: Ignoring function pointer (PFN_vkFreeFunction). **/
6431
6432 /** Note: Ignoring function pointer (PFN_vkInternalAllocationNotification). **/
6433
6434 /** Note: Ignoring function pointer (PFN_vkInternalFreeNotification). **/
6435
6436 INDENT(-4);
6437 PRINT_SPACE
6438 if (commaNeeded)
6439 _OUT << "}," << std::endl;
6440 else
6441 _OUT << "}" << std::endl;
6442 }
print_VkAllocationCallbacks(const VkAllocationCallbacks * obj,const std::string & s,bool commaNeeded=true)6443 static void print_VkAllocationCallbacks(const VkAllocationCallbacks * obj, const std::string& s, bool commaNeeded=true) {
6444 PRINT_SPACE
6445 _OUT << "{" << std::endl;
6446 INDENT(4);
6447
6448 /** Note: Ignoring void* data. **/
6449
6450 /** Note: Ignoring function pointer (PFN_vkAllocationFunction). **/
6451
6452 /** Note: Ignoring function pointer (PFN_vkReallocationFunction). **/
6453
6454 /** Note: Ignoring function pointer (PFN_vkFreeFunction). **/
6455
6456 /** Note: Ignoring function pointer (PFN_vkInternalAllocationNotification). **/
6457
6458 /** Note: Ignoring function pointer (PFN_vkInternalFreeNotification). **/
6459
6460 INDENT(-4);
6461 PRINT_SPACE
6462 if (commaNeeded)
6463 _OUT << "}," << std::endl;
6464 else
6465 _OUT << "}" << std::endl;
6466 }
6467
print_VkApplicationInfo(VkApplicationInfo obj,const std::string & s,bool commaNeeded=true)6468 static void print_VkApplicationInfo(VkApplicationInfo obj, const std::string& s, bool commaNeeded=true) {
6469 PRINT_SPACE
6470 _OUT << "{" << std::endl;
6471 INDENT(4);
6472
6473 print_VkStructureType(obj.sType, "sType", 1);
6474
6475 if (obj.pNext) {
6476 dumpPNextChain(obj.pNext);
6477 } else {
6478 PRINT_SPACE
6479 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6480 }
6481
6482 print_char(obj.pApplicationName, "pApplicationName", 1);
6483
6484 print_uint32_t(obj.applicationVersion, "applicationVersion", 1);
6485
6486 print_char(obj.pEngineName, "pEngineName", 1);
6487
6488 print_uint32_t(obj.engineVersion, "engineVersion", 1);
6489
6490 print_uint32_t(obj.apiVersion, "apiVersion", 0);
6491
6492 INDENT(-4);
6493 PRINT_SPACE
6494 if (commaNeeded)
6495 _OUT << "}," << std::endl;
6496 else
6497 _OUT << "}" << std::endl;
6498 }
print_VkApplicationInfo(const VkApplicationInfo * obj,const std::string & s,bool commaNeeded=true)6499 static void print_VkApplicationInfo(const VkApplicationInfo * obj, const std::string& s, bool commaNeeded=true) {
6500 PRINT_SPACE
6501 _OUT << "{" << std::endl;
6502 INDENT(4);
6503
6504 print_VkStructureType(obj->sType, "sType", 1);
6505
6506 if (obj->pNext) {
6507 dumpPNextChain(obj->pNext);
6508 } else {
6509 PRINT_SPACE
6510 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6511 }
6512
6513 print_char(obj->pApplicationName, "pApplicationName", 1);
6514
6515 print_uint32_t(obj->applicationVersion, "applicationVersion", 1);
6516
6517 print_char(obj->pEngineName, "pEngineName", 1);
6518
6519 print_uint32_t(obj->engineVersion, "engineVersion", 1);
6520
6521 print_uint32_t(obj->apiVersion, "apiVersion", 0);
6522
6523 INDENT(-4);
6524 PRINT_SPACE
6525 if (commaNeeded)
6526 _OUT << "}," << std::endl;
6527 else
6528 _OUT << "}" << std::endl;
6529 }
6530
print_VkFormatProperties(VkFormatProperties obj,const std::string & s,bool commaNeeded=true)6531 static void print_VkFormatProperties(VkFormatProperties obj, const std::string& s, bool commaNeeded=true) {
6532 PRINT_SPACE
6533 _OUT << "{" << std::endl;
6534 INDENT(4);
6535
6536 print_VkFormatFeatureFlags(obj.linearTilingFeatures, "linearTilingFeatures", 1);
6537
6538 print_VkFormatFeatureFlags(obj.optimalTilingFeatures, "optimalTilingFeatures", 1);
6539
6540 print_VkFormatFeatureFlags(obj.bufferFeatures, "bufferFeatures", 0);
6541
6542 INDENT(-4);
6543 PRINT_SPACE
6544 if (commaNeeded)
6545 _OUT << "}," << std::endl;
6546 else
6547 _OUT << "}" << std::endl;
6548 }
print_VkFormatProperties(const VkFormatProperties * obj,const std::string & s,bool commaNeeded=true)6549 static void print_VkFormatProperties(const VkFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
6550 PRINT_SPACE
6551 _OUT << "{" << std::endl;
6552 INDENT(4);
6553
6554 print_VkFormatFeatureFlags(obj->linearTilingFeatures, "linearTilingFeatures", 1);
6555
6556 print_VkFormatFeatureFlags(obj->optimalTilingFeatures, "optimalTilingFeatures", 1);
6557
6558 print_VkFormatFeatureFlags(obj->bufferFeatures, "bufferFeatures", 0);
6559
6560 INDENT(-4);
6561 PRINT_SPACE
6562 if (commaNeeded)
6563 _OUT << "}," << std::endl;
6564 else
6565 _OUT << "}" << std::endl;
6566 }
6567
print_VkImageFormatProperties(VkImageFormatProperties obj,const std::string & s,bool commaNeeded=true)6568 static void print_VkImageFormatProperties(VkImageFormatProperties obj, const std::string& s, bool commaNeeded=true) {
6569 PRINT_SPACE
6570 _OUT << "{" << std::endl;
6571 INDENT(4);
6572
6573 PRINT_SPACE
6574 _OUT << "\"maxExtent\": " << std::endl;
6575 {
6576 print_VkExtent3D(obj.maxExtent, "maxExtent", 1);
6577 }
6578
6579 print_uint32_t(obj.maxMipLevels, "maxMipLevels", 1);
6580
6581 print_uint32_t(obj.maxArrayLayers, "maxArrayLayers", 1);
6582
6583 print_VkSampleCountFlags(obj.sampleCounts, "sampleCounts", 1);
6584
6585 print_VkDeviceSize(obj.maxResourceSize, "maxResourceSize", 0);
6586
6587 INDENT(-4);
6588 PRINT_SPACE
6589 if (commaNeeded)
6590 _OUT << "}," << std::endl;
6591 else
6592 _OUT << "}" << std::endl;
6593 }
print_VkImageFormatProperties(const VkImageFormatProperties * obj,const std::string & s,bool commaNeeded=true)6594 static void print_VkImageFormatProperties(const VkImageFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
6595 PRINT_SPACE
6596 _OUT << "{" << std::endl;
6597 INDENT(4);
6598
6599 PRINT_SPACE
6600 _OUT << "\"maxExtent\": " << std::endl;
6601 {
6602 print_VkExtent3D(obj->maxExtent, "maxExtent", 1);
6603 }
6604
6605 print_uint32_t(obj->maxMipLevels, "maxMipLevels", 1);
6606
6607 print_uint32_t(obj->maxArrayLayers, "maxArrayLayers", 1);
6608
6609 print_VkSampleCountFlags(obj->sampleCounts, "sampleCounts", 1);
6610
6611 print_VkDeviceSize(obj->maxResourceSize, "maxResourceSize", 0);
6612
6613 INDENT(-4);
6614 PRINT_SPACE
6615 if (commaNeeded)
6616 _OUT << "}," << std::endl;
6617 else
6618 _OUT << "}" << std::endl;
6619 }
6620
print_VkInstanceCreateInfo(VkInstanceCreateInfo obj,const std::string & s,bool commaNeeded=true)6621 static void print_VkInstanceCreateInfo(VkInstanceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
6622 PRINT_SPACE
6623 _OUT << "{" << std::endl;
6624 INDENT(4);
6625
6626 print_VkStructureType(obj.sType, "sType", 1);
6627
6628 if (obj.pNext) {
6629 dumpPNextChain(obj.pNext);
6630 } else {
6631 PRINT_SPACE
6632 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6633 }
6634
6635 print_VkInstanceCreateFlags(obj.flags, "flags", 1);
6636
6637 PRINT_SPACE
6638 _OUT << "\"pApplicationInfo\": " << std::endl;
6639 if (obj.pApplicationInfo) {
6640 print_VkApplicationInfo(obj.pApplicationInfo, "pApplicationInfo", 1);
6641 }
6642 else
6643 {
6644 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
6645 }
6646
6647 print_uint32_t(obj.enabledLayerCount, "enabledLayerCount", 1);
6648
6649 print_char(obj.ppEnabledLayerNames, "ppEnabledLayerNames", 1);
6650
6651 print_uint32_t(obj.enabledExtensionCount, "enabledExtensionCount", 1);
6652
6653 print_char(obj.ppEnabledExtensionNames, "ppEnabledExtensionNames", 0);
6654
6655 INDENT(-4);
6656 PRINT_SPACE
6657 if (commaNeeded)
6658 _OUT << "}," << std::endl;
6659 else
6660 _OUT << "}" << std::endl;
6661 }
print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj,const std::string & s,bool commaNeeded=true)6662 static void print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
6663 PRINT_SPACE
6664 _OUT << "{" << std::endl;
6665 INDENT(4);
6666
6667 print_VkStructureType(obj->sType, "sType", 1);
6668
6669 if (obj->pNext) {
6670 dumpPNextChain(obj->pNext);
6671 } else {
6672 PRINT_SPACE
6673 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6674 }
6675
6676 print_VkInstanceCreateFlags(obj->flags, "flags", 1);
6677
6678 PRINT_SPACE
6679 _OUT << "\"pApplicationInfo\": " << std::endl;
6680 if (obj->pApplicationInfo) {
6681 print_VkApplicationInfo(obj->pApplicationInfo, "pApplicationInfo", 1);
6682 }
6683 else
6684 {
6685 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
6686 }
6687
6688 print_uint32_t(obj->enabledLayerCount, "enabledLayerCount", 1);
6689
6690 print_char(obj->ppEnabledLayerNames, "ppEnabledLayerNames", 1);
6691
6692 print_uint32_t(obj->enabledExtensionCount, "enabledExtensionCount", 1);
6693
6694 print_char(obj->ppEnabledExtensionNames, "ppEnabledExtensionNames", 0);
6695
6696 INDENT(-4);
6697 PRINT_SPACE
6698 if (commaNeeded)
6699 _OUT << "}," << std::endl;
6700 else
6701 _OUT << "}" << std::endl;
6702 }
6703
print_VkMemoryHeap(VkMemoryHeap obj,const std::string & s,bool commaNeeded=true)6704 static void print_VkMemoryHeap(VkMemoryHeap obj, const std::string& s, bool commaNeeded=true) {
6705 PRINT_SPACE
6706 _OUT << "{" << std::endl;
6707 INDENT(4);
6708
6709 print_VkDeviceSize(obj.size, "size", 1);
6710
6711 print_VkMemoryHeapFlags(obj.flags, "flags", 0);
6712
6713 INDENT(-4);
6714 PRINT_SPACE
6715 if (commaNeeded)
6716 _OUT << "}," << std::endl;
6717 else
6718 _OUT << "}" << std::endl;
6719 }
print_VkMemoryHeap(const VkMemoryHeap * obj,const std::string & s,bool commaNeeded=true)6720 static void print_VkMemoryHeap(const VkMemoryHeap * obj, const std::string& s, bool commaNeeded=true) {
6721 PRINT_SPACE
6722 _OUT << "{" << std::endl;
6723 INDENT(4);
6724
6725 print_VkDeviceSize(obj->size, "size", 1);
6726
6727 print_VkMemoryHeapFlags(obj->flags, "flags", 0);
6728
6729 INDENT(-4);
6730 PRINT_SPACE
6731 if (commaNeeded)
6732 _OUT << "}," << std::endl;
6733 else
6734 _OUT << "}" << std::endl;
6735 }
6736
print_VkMemoryType(VkMemoryType obj,const std::string & s,bool commaNeeded=true)6737 static void print_VkMemoryType(VkMemoryType obj, const std::string& s, bool commaNeeded=true) {
6738 PRINT_SPACE
6739 _OUT << "{" << std::endl;
6740 INDENT(4);
6741
6742 print_VkMemoryPropertyFlags(obj.propertyFlags, "propertyFlags", 1);
6743
6744 print_uint32_t(obj.heapIndex, "heapIndex", 0);
6745
6746 INDENT(-4);
6747 PRINT_SPACE
6748 if (commaNeeded)
6749 _OUT << "}," << std::endl;
6750 else
6751 _OUT << "}" << std::endl;
6752 }
print_VkMemoryType(const VkMemoryType * obj,const std::string & s,bool commaNeeded=true)6753 static void print_VkMemoryType(const VkMemoryType * obj, const std::string& s, bool commaNeeded=true) {
6754 PRINT_SPACE
6755 _OUT << "{" << std::endl;
6756 INDENT(4);
6757
6758 print_VkMemoryPropertyFlags(obj->propertyFlags, "propertyFlags", 1);
6759
6760 print_uint32_t(obj->heapIndex, "heapIndex", 0);
6761
6762 INDENT(-4);
6763 PRINT_SPACE
6764 if (commaNeeded)
6765 _OUT << "}," << std::endl;
6766 else
6767 _OUT << "}" << std::endl;
6768 }
6769
print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj,const std::string & s,bool commaNeeded=true)6770 static void print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj, const std::string& s, bool commaNeeded=true) {
6771 PRINT_SPACE
6772 _OUT << "{" << std::endl;
6773 INDENT(4);
6774
6775 print_VkBool32(obj.robustBufferAccess, "robustBufferAccess", 1);
6776
6777 print_VkBool32(obj.fullDrawIndexUint32, "fullDrawIndexUint32", 1);
6778
6779 print_VkBool32(obj.imageCubeArray, "imageCubeArray", 1);
6780
6781 print_VkBool32(obj.independentBlend, "independentBlend", 1);
6782
6783 print_VkBool32(obj.geometryShader, "geometryShader", 1);
6784
6785 print_VkBool32(obj.tessellationShader, "tessellationShader", 1);
6786
6787 print_VkBool32(obj.sampleRateShading, "sampleRateShading", 1);
6788
6789 print_VkBool32(obj.dualSrcBlend, "dualSrcBlend", 1);
6790
6791 print_VkBool32(obj.logicOp, "logicOp", 1);
6792
6793 print_VkBool32(obj.multiDrawIndirect, "multiDrawIndirect", 1);
6794
6795 print_VkBool32(obj.drawIndirectFirstInstance, "drawIndirectFirstInstance", 1);
6796
6797 print_VkBool32(obj.depthClamp, "depthClamp", 1);
6798
6799 print_VkBool32(obj.depthBiasClamp, "depthBiasClamp", 1);
6800
6801 print_VkBool32(obj.fillModeNonSolid, "fillModeNonSolid", 1);
6802
6803 print_VkBool32(obj.depthBounds, "depthBounds", 1);
6804
6805 print_VkBool32(obj.wideLines, "wideLines", 1);
6806
6807 print_VkBool32(obj.largePoints, "largePoints", 1);
6808
6809 print_VkBool32(obj.alphaToOne, "alphaToOne", 1);
6810
6811 print_VkBool32(obj.multiViewport, "multiViewport", 1);
6812
6813 print_VkBool32(obj.samplerAnisotropy, "samplerAnisotropy", 1);
6814
6815 print_VkBool32(obj.textureCompressionETC2, "textureCompressionETC2", 1);
6816
6817 print_VkBool32(obj.textureCompressionASTC_LDR, "textureCompressionASTC_LDR", 1);
6818
6819 print_VkBool32(obj.textureCompressionBC, "textureCompressionBC", 1);
6820
6821 print_VkBool32(obj.occlusionQueryPrecise, "occlusionQueryPrecise", 1);
6822
6823 print_VkBool32(obj.pipelineStatisticsQuery, "pipelineStatisticsQuery", 1);
6824
6825 print_VkBool32(obj.vertexPipelineStoresAndAtomics, "vertexPipelineStoresAndAtomics", 1);
6826
6827 print_VkBool32(obj.fragmentStoresAndAtomics, "fragmentStoresAndAtomics", 1);
6828
6829 print_VkBool32(obj.shaderTessellationAndGeometryPointSize, "shaderTessellationAndGeometryPointSize", 1);
6830
6831 print_VkBool32(obj.shaderImageGatherExtended, "shaderImageGatherExtended", 1);
6832
6833 print_VkBool32(obj.shaderStorageImageExtendedFormats, "shaderStorageImageExtendedFormats", 1);
6834
6835 print_VkBool32(obj.shaderStorageImageMultisample, "shaderStorageImageMultisample", 1);
6836
6837 print_VkBool32(obj.shaderStorageImageReadWithoutFormat, "shaderStorageImageReadWithoutFormat", 1);
6838
6839 print_VkBool32(obj.shaderStorageImageWriteWithoutFormat, "shaderStorageImageWriteWithoutFormat", 1);
6840
6841 print_VkBool32(obj.shaderUniformBufferArrayDynamicIndexing, "shaderUniformBufferArrayDynamicIndexing", 1);
6842
6843 print_VkBool32(obj.shaderSampledImageArrayDynamicIndexing, "shaderSampledImageArrayDynamicIndexing", 1);
6844
6845 print_VkBool32(obj.shaderStorageBufferArrayDynamicIndexing, "shaderStorageBufferArrayDynamicIndexing", 1);
6846
6847 print_VkBool32(obj.shaderStorageImageArrayDynamicIndexing, "shaderStorageImageArrayDynamicIndexing", 1);
6848
6849 print_VkBool32(obj.shaderClipDistance, "shaderClipDistance", 1);
6850
6851 print_VkBool32(obj.shaderCullDistance, "shaderCullDistance", 1);
6852
6853 print_VkBool32(obj.shaderFloat64, "shaderFloat64", 1);
6854
6855 print_VkBool32(obj.shaderInt64, "shaderInt64", 1);
6856
6857 print_VkBool32(obj.shaderInt16, "shaderInt16", 1);
6858
6859 print_VkBool32(obj.shaderResourceResidency, "shaderResourceResidency", 1);
6860
6861 print_VkBool32(obj.shaderResourceMinLod, "shaderResourceMinLod", 1);
6862
6863 print_VkBool32(obj.sparseBinding, "sparseBinding", 1);
6864
6865 print_VkBool32(obj.sparseResidencyBuffer, "sparseResidencyBuffer", 1);
6866
6867 print_VkBool32(obj.sparseResidencyImage2D, "sparseResidencyImage2D", 1);
6868
6869 print_VkBool32(obj.sparseResidencyImage3D, "sparseResidencyImage3D", 1);
6870
6871 print_VkBool32(obj.sparseResidency2Samples, "sparseResidency2Samples", 1);
6872
6873 print_VkBool32(obj.sparseResidency4Samples, "sparseResidency4Samples", 1);
6874
6875 print_VkBool32(obj.sparseResidency8Samples, "sparseResidency8Samples", 1);
6876
6877 print_VkBool32(obj.sparseResidency16Samples, "sparseResidency16Samples", 1);
6878
6879 print_VkBool32(obj.sparseResidencyAliased, "sparseResidencyAliased", 1);
6880
6881 print_VkBool32(obj.variableMultisampleRate, "variableMultisampleRate", 1);
6882
6883 print_VkBool32(obj.inheritedQueries, "inheritedQueries", 0);
6884
6885 INDENT(-4);
6886 PRINT_SPACE
6887 if (commaNeeded)
6888 _OUT << "}," << std::endl;
6889 else
6890 _OUT << "}" << std::endl;
6891 }
print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj,const std::string & s,bool commaNeeded=true)6892 static void print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj, const std::string& s, bool commaNeeded=true) {
6893 PRINT_SPACE
6894 _OUT << "{" << std::endl;
6895 INDENT(4);
6896
6897 print_VkBool32(obj->robustBufferAccess, "robustBufferAccess", 1);
6898
6899 print_VkBool32(obj->fullDrawIndexUint32, "fullDrawIndexUint32", 1);
6900
6901 print_VkBool32(obj->imageCubeArray, "imageCubeArray", 1);
6902
6903 print_VkBool32(obj->independentBlend, "independentBlend", 1);
6904
6905 print_VkBool32(obj->geometryShader, "geometryShader", 1);
6906
6907 print_VkBool32(obj->tessellationShader, "tessellationShader", 1);
6908
6909 print_VkBool32(obj->sampleRateShading, "sampleRateShading", 1);
6910
6911 print_VkBool32(obj->dualSrcBlend, "dualSrcBlend", 1);
6912
6913 print_VkBool32(obj->logicOp, "logicOp", 1);
6914
6915 print_VkBool32(obj->multiDrawIndirect, "multiDrawIndirect", 1);
6916
6917 print_VkBool32(obj->drawIndirectFirstInstance, "drawIndirectFirstInstance", 1);
6918
6919 print_VkBool32(obj->depthClamp, "depthClamp", 1);
6920
6921 print_VkBool32(obj->depthBiasClamp, "depthBiasClamp", 1);
6922
6923 print_VkBool32(obj->fillModeNonSolid, "fillModeNonSolid", 1);
6924
6925 print_VkBool32(obj->depthBounds, "depthBounds", 1);
6926
6927 print_VkBool32(obj->wideLines, "wideLines", 1);
6928
6929 print_VkBool32(obj->largePoints, "largePoints", 1);
6930
6931 print_VkBool32(obj->alphaToOne, "alphaToOne", 1);
6932
6933 print_VkBool32(obj->multiViewport, "multiViewport", 1);
6934
6935 print_VkBool32(obj->samplerAnisotropy, "samplerAnisotropy", 1);
6936
6937 print_VkBool32(obj->textureCompressionETC2, "textureCompressionETC2", 1);
6938
6939 print_VkBool32(obj->textureCompressionASTC_LDR, "textureCompressionASTC_LDR", 1);
6940
6941 print_VkBool32(obj->textureCompressionBC, "textureCompressionBC", 1);
6942
6943 print_VkBool32(obj->occlusionQueryPrecise, "occlusionQueryPrecise", 1);
6944
6945 print_VkBool32(obj->pipelineStatisticsQuery, "pipelineStatisticsQuery", 1);
6946
6947 print_VkBool32(obj->vertexPipelineStoresAndAtomics, "vertexPipelineStoresAndAtomics", 1);
6948
6949 print_VkBool32(obj->fragmentStoresAndAtomics, "fragmentStoresAndAtomics", 1);
6950
6951 print_VkBool32(obj->shaderTessellationAndGeometryPointSize, "shaderTessellationAndGeometryPointSize", 1);
6952
6953 print_VkBool32(obj->shaderImageGatherExtended, "shaderImageGatherExtended", 1);
6954
6955 print_VkBool32(obj->shaderStorageImageExtendedFormats, "shaderStorageImageExtendedFormats", 1);
6956
6957 print_VkBool32(obj->shaderStorageImageMultisample, "shaderStorageImageMultisample", 1);
6958
6959 print_VkBool32(obj->shaderStorageImageReadWithoutFormat, "shaderStorageImageReadWithoutFormat", 1);
6960
6961 print_VkBool32(obj->shaderStorageImageWriteWithoutFormat, "shaderStorageImageWriteWithoutFormat", 1);
6962
6963 print_VkBool32(obj->shaderUniformBufferArrayDynamicIndexing, "shaderUniformBufferArrayDynamicIndexing", 1);
6964
6965 print_VkBool32(obj->shaderSampledImageArrayDynamicIndexing, "shaderSampledImageArrayDynamicIndexing", 1);
6966
6967 print_VkBool32(obj->shaderStorageBufferArrayDynamicIndexing, "shaderStorageBufferArrayDynamicIndexing", 1);
6968
6969 print_VkBool32(obj->shaderStorageImageArrayDynamicIndexing, "shaderStorageImageArrayDynamicIndexing", 1);
6970
6971 print_VkBool32(obj->shaderClipDistance, "shaderClipDistance", 1);
6972
6973 print_VkBool32(obj->shaderCullDistance, "shaderCullDistance", 1);
6974
6975 print_VkBool32(obj->shaderFloat64, "shaderFloat64", 1);
6976
6977 print_VkBool32(obj->shaderInt64, "shaderInt64", 1);
6978
6979 print_VkBool32(obj->shaderInt16, "shaderInt16", 1);
6980
6981 print_VkBool32(obj->shaderResourceResidency, "shaderResourceResidency", 1);
6982
6983 print_VkBool32(obj->shaderResourceMinLod, "shaderResourceMinLod", 1);
6984
6985 print_VkBool32(obj->sparseBinding, "sparseBinding", 1);
6986
6987 print_VkBool32(obj->sparseResidencyBuffer, "sparseResidencyBuffer", 1);
6988
6989 print_VkBool32(obj->sparseResidencyImage2D, "sparseResidencyImage2D", 1);
6990
6991 print_VkBool32(obj->sparseResidencyImage3D, "sparseResidencyImage3D", 1);
6992
6993 print_VkBool32(obj->sparseResidency2Samples, "sparseResidency2Samples", 1);
6994
6995 print_VkBool32(obj->sparseResidency4Samples, "sparseResidency4Samples", 1);
6996
6997 print_VkBool32(obj->sparseResidency8Samples, "sparseResidency8Samples", 1);
6998
6999 print_VkBool32(obj->sparseResidency16Samples, "sparseResidency16Samples", 1);
7000
7001 print_VkBool32(obj->sparseResidencyAliased, "sparseResidencyAliased", 1);
7002
7003 print_VkBool32(obj->variableMultisampleRate, "variableMultisampleRate", 1);
7004
7005 print_VkBool32(obj->inheritedQueries, "inheritedQueries", 0);
7006
7007 INDENT(-4);
7008 PRINT_SPACE
7009 if (commaNeeded)
7010 _OUT << "}," << std::endl;
7011 else
7012 _OUT << "}" << std::endl;
7013 }
7014
print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj,const std::string & s,bool commaNeeded=true)7015 static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::string& s, bool commaNeeded=true) {
7016 PRINT_SPACE
7017 _OUT << "{" << std::endl;
7018 INDENT(4);
7019
7020 print_uint32_t(obj.maxImageDimension1D, "maxImageDimension1D", 1);
7021
7022 print_uint32_t(obj.maxImageDimension2D, "maxImageDimension2D", 1);
7023
7024 print_uint32_t(obj.maxImageDimension3D, "maxImageDimension3D", 1);
7025
7026 print_uint32_t(obj.maxImageDimensionCube, "maxImageDimensionCube", 1);
7027
7028 print_uint32_t(obj.maxImageArrayLayers, "maxImageArrayLayers", 1);
7029
7030 print_uint32_t(obj.maxTexelBufferElements, "maxTexelBufferElements", 1);
7031
7032 print_uint32_t(obj.maxUniformBufferRange, "maxUniformBufferRange", 1);
7033
7034 print_uint32_t(obj.maxStorageBufferRange, "maxStorageBufferRange", 1);
7035
7036 print_uint32_t(obj.maxPushConstantsSize, "maxPushConstantsSize", 1);
7037
7038 print_uint32_t(obj.maxMemoryAllocationCount, "maxMemoryAllocationCount", 1);
7039
7040 print_uint32_t(obj.maxSamplerAllocationCount, "maxSamplerAllocationCount", 1);
7041
7042 print_VkDeviceSize(obj.bufferImageGranularity, "bufferImageGranularity", 1);
7043
7044 print_VkDeviceSize(obj.sparseAddressSpaceSize, "sparseAddressSpaceSize", 1);
7045
7046 print_uint32_t(obj.maxBoundDescriptorSets, "maxBoundDescriptorSets", 1);
7047
7048 print_uint32_t(obj.maxPerStageDescriptorSamplers, "maxPerStageDescriptorSamplers", 1);
7049
7050 print_uint32_t(obj.maxPerStageDescriptorUniformBuffers, "maxPerStageDescriptorUniformBuffers", 1);
7051
7052 print_uint32_t(obj.maxPerStageDescriptorStorageBuffers, "maxPerStageDescriptorStorageBuffers", 1);
7053
7054 print_uint32_t(obj.maxPerStageDescriptorSampledImages, "maxPerStageDescriptorSampledImages", 1);
7055
7056 print_uint32_t(obj.maxPerStageDescriptorStorageImages, "maxPerStageDescriptorStorageImages", 1);
7057
7058 print_uint32_t(obj.maxPerStageDescriptorInputAttachments, "maxPerStageDescriptorInputAttachments", 1);
7059
7060 print_uint32_t(obj.maxPerStageResources, "maxPerStageResources", 1);
7061
7062 print_uint32_t(obj.maxDescriptorSetSamplers, "maxDescriptorSetSamplers", 1);
7063
7064 print_uint32_t(obj.maxDescriptorSetUniformBuffers, "maxDescriptorSetUniformBuffers", 1);
7065
7066 print_uint32_t(obj.maxDescriptorSetUniformBuffersDynamic, "maxDescriptorSetUniformBuffersDynamic", 1);
7067
7068 print_uint32_t(obj.maxDescriptorSetStorageBuffers, "maxDescriptorSetStorageBuffers", 1);
7069
7070 print_uint32_t(obj.maxDescriptorSetStorageBuffersDynamic, "maxDescriptorSetStorageBuffersDynamic", 1);
7071
7072 print_uint32_t(obj.maxDescriptorSetSampledImages, "maxDescriptorSetSampledImages", 1);
7073
7074 print_uint32_t(obj.maxDescriptorSetStorageImages, "maxDescriptorSetStorageImages", 1);
7075
7076 print_uint32_t(obj.maxDescriptorSetInputAttachments, "maxDescriptorSetInputAttachments", 1);
7077
7078 print_uint32_t(obj.maxVertexInputAttributes, "maxVertexInputAttributes", 1);
7079
7080 print_uint32_t(obj.maxVertexInputBindings, "maxVertexInputBindings", 1);
7081
7082 print_uint32_t(obj.maxVertexInputAttributeOffset, "maxVertexInputAttributeOffset", 1);
7083
7084 print_uint32_t(obj.maxVertexInputBindingStride, "maxVertexInputBindingStride", 1);
7085
7086 print_uint32_t(obj.maxVertexOutputComponents, "maxVertexOutputComponents", 1);
7087
7088 print_uint32_t(obj.maxTessellationGenerationLevel, "maxTessellationGenerationLevel", 1);
7089
7090 print_uint32_t(obj.maxTessellationPatchSize, "maxTessellationPatchSize", 1);
7091
7092 print_uint32_t(obj.maxTessellationControlPerVertexInputComponents, "maxTessellationControlPerVertexInputComponents", 1);
7093
7094 print_uint32_t(obj.maxTessellationControlPerVertexOutputComponents, "maxTessellationControlPerVertexOutputComponents", 1);
7095
7096 print_uint32_t(obj.maxTessellationControlPerPatchOutputComponents, "maxTessellationControlPerPatchOutputComponents", 1);
7097
7098 print_uint32_t(obj.maxTessellationControlTotalOutputComponents, "maxTessellationControlTotalOutputComponents", 1);
7099
7100 print_uint32_t(obj.maxTessellationEvaluationInputComponents, "maxTessellationEvaluationInputComponents", 1);
7101
7102 print_uint32_t(obj.maxTessellationEvaluationOutputComponents, "maxTessellationEvaluationOutputComponents", 1);
7103
7104 print_uint32_t(obj.maxGeometryShaderInvocations, "maxGeometryShaderInvocations", 1);
7105
7106 print_uint32_t(obj.maxGeometryInputComponents, "maxGeometryInputComponents", 1);
7107
7108 print_uint32_t(obj.maxGeometryOutputComponents, "maxGeometryOutputComponents", 1);
7109
7110 print_uint32_t(obj.maxGeometryOutputVertices, "maxGeometryOutputVertices", 1);
7111
7112 print_uint32_t(obj.maxGeometryTotalOutputComponents, "maxGeometryTotalOutputComponents", 1);
7113
7114 print_uint32_t(obj.maxFragmentInputComponents, "maxFragmentInputComponents", 1);
7115
7116 print_uint32_t(obj.maxFragmentOutputAttachments, "maxFragmentOutputAttachments", 1);
7117
7118 print_uint32_t(obj.maxFragmentDualSrcAttachments, "maxFragmentDualSrcAttachments", 1);
7119
7120 print_uint32_t(obj.maxFragmentCombinedOutputResources, "maxFragmentCombinedOutputResources", 1);
7121
7122 print_uint32_t(obj.maxComputeSharedMemorySize, "maxComputeSharedMemorySize", 1);
7123
7124 PRINT_SPACE
7125 _OUT << "\"maxComputeWorkGroupCount\":" << std::endl;
7126 PRINT_SPACE
7127 if (obj.maxComputeWorkGroupCount) {
7128 _OUT << "[" << std::endl;
7129 for (unsigned int i = 0; i < 3; i++) {
7130 bool isCommaNeeded = (i+1) != 3;
7131 print_uint32_t(obj.maxComputeWorkGroupCount[i], "", isCommaNeeded);
7132 }
7133 PRINT_SPACE
7134 _OUT << "]" << "," << std::endl;
7135 } else {
7136 _OUT << "\"NULL\"" << "," << std::endl;
7137 }
7138
7139 print_uint32_t(obj.maxComputeWorkGroupInvocations, "maxComputeWorkGroupInvocations", 1);
7140
7141 PRINT_SPACE
7142 _OUT << "\"maxComputeWorkGroupSize\":" << std::endl;
7143 PRINT_SPACE
7144 if (obj.maxComputeWorkGroupSize) {
7145 _OUT << "[" << std::endl;
7146 for (unsigned int i = 0; i < 3; i++) {
7147 bool isCommaNeeded = (i+1) != 3;
7148 print_uint32_t(obj.maxComputeWorkGroupSize[i], "", isCommaNeeded);
7149 }
7150 PRINT_SPACE
7151 _OUT << "]" << "," << std::endl;
7152 } else {
7153 _OUT << "\"NULL\"" << "," << std::endl;
7154 }
7155
7156 print_uint32_t(obj.subPixelPrecisionBits, "subPixelPrecisionBits", 1);
7157
7158 print_uint32_t(obj.subTexelPrecisionBits, "subTexelPrecisionBits", 1);
7159
7160 print_uint32_t(obj.mipmapPrecisionBits, "mipmapPrecisionBits", 1);
7161
7162 print_uint32_t(obj.maxDrawIndexedIndexValue, "maxDrawIndexedIndexValue", 1);
7163
7164 print_uint32_t(obj.maxDrawIndirectCount, "maxDrawIndirectCount", 1);
7165
7166 print_float(obj.maxSamplerLodBias, "maxSamplerLodBias", 1);
7167
7168 print_float(obj.maxSamplerAnisotropy, "maxSamplerAnisotropy", 1);
7169
7170 print_uint32_t(obj.maxViewports, "maxViewports", 1);
7171
7172 PRINT_SPACE
7173 _OUT << "\"maxViewportDimensions\":" << std::endl;
7174 PRINT_SPACE
7175 if (obj.maxViewportDimensions) {
7176 _OUT << "[" << std::endl;
7177 for (unsigned int i = 0; i < 2; i++) {
7178 bool isCommaNeeded = (i+1) != 2;
7179 print_uint32_t(obj.maxViewportDimensions[i], "", isCommaNeeded);
7180 }
7181 PRINT_SPACE
7182 _OUT << "]" << "," << std::endl;
7183 } else {
7184 _OUT << "\"NULL\"" << "," << std::endl;
7185 }
7186
7187 PRINT_SPACE
7188 _OUT << "\"viewportBoundsRange\":" << std::endl;
7189 PRINT_SPACE
7190 if (obj.viewportBoundsRange) {
7191 _OUT << "[" << std::endl;
7192 for (unsigned int i = 0; i < 2; i++) {
7193 bool isCommaNeeded = (i+1) != 2;
7194 print_float(obj.viewportBoundsRange[i], "", isCommaNeeded);
7195 }
7196 PRINT_SPACE
7197 _OUT << "]" << "," << std::endl;
7198 } else {
7199 _OUT << "\"NULL\"" << "," << std::endl;
7200 }
7201
7202 print_uint32_t(obj.viewportSubPixelBits, "viewportSubPixelBits", 1);
7203
7204 print_size_t(obj.minMemoryMapAlignment, "minMemoryMapAlignment", 1);
7205
7206 print_VkDeviceSize(obj.minTexelBufferOffsetAlignment, "minTexelBufferOffsetAlignment", 1);
7207
7208 print_VkDeviceSize(obj.minUniformBufferOffsetAlignment, "minUniformBufferOffsetAlignment", 1);
7209
7210 print_VkDeviceSize(obj.minStorageBufferOffsetAlignment, "minStorageBufferOffsetAlignment", 1);
7211
7212 print_int32_t(obj.minTexelOffset, "minTexelOffset", 1);
7213
7214 print_uint32_t(obj.maxTexelOffset, "maxTexelOffset", 1);
7215
7216 print_int32_t(obj.minTexelGatherOffset, "minTexelGatherOffset", 1);
7217
7218 print_uint32_t(obj.maxTexelGatherOffset, "maxTexelGatherOffset", 1);
7219
7220 print_float(obj.minInterpolationOffset, "minInterpolationOffset", 1);
7221
7222 print_float(obj.maxInterpolationOffset, "maxInterpolationOffset", 1);
7223
7224 print_uint32_t(obj.subPixelInterpolationOffsetBits, "subPixelInterpolationOffsetBits", 1);
7225
7226 print_uint32_t(obj.maxFramebufferWidth, "maxFramebufferWidth", 1);
7227
7228 print_uint32_t(obj.maxFramebufferHeight, "maxFramebufferHeight", 1);
7229
7230 print_uint32_t(obj.maxFramebufferLayers, "maxFramebufferLayers", 1);
7231
7232 print_VkSampleCountFlags(obj.framebufferColorSampleCounts, "framebufferColorSampleCounts", 1);
7233
7234 print_VkSampleCountFlags(obj.framebufferDepthSampleCounts, "framebufferDepthSampleCounts", 1);
7235
7236 print_VkSampleCountFlags(obj.framebufferStencilSampleCounts, "framebufferStencilSampleCounts", 1);
7237
7238 print_VkSampleCountFlags(obj.framebufferNoAttachmentsSampleCounts, "framebufferNoAttachmentsSampleCounts", 1);
7239
7240 print_uint32_t(obj.maxColorAttachments, "maxColorAttachments", 1);
7241
7242 print_VkSampleCountFlags(obj.sampledImageColorSampleCounts, "sampledImageColorSampleCounts", 1);
7243
7244 print_VkSampleCountFlags(obj.sampledImageIntegerSampleCounts, "sampledImageIntegerSampleCounts", 1);
7245
7246 print_VkSampleCountFlags(obj.sampledImageDepthSampleCounts, "sampledImageDepthSampleCounts", 1);
7247
7248 print_VkSampleCountFlags(obj.sampledImageStencilSampleCounts, "sampledImageStencilSampleCounts", 1);
7249
7250 print_VkSampleCountFlags(obj.storageImageSampleCounts, "storageImageSampleCounts", 1);
7251
7252 print_uint32_t(obj.maxSampleMaskWords, "maxSampleMaskWords", 1);
7253
7254 print_VkBool32(obj.timestampComputeAndGraphics, "timestampComputeAndGraphics", 1);
7255
7256 print_float(obj.timestampPeriod, "timestampPeriod", 1);
7257
7258 print_uint32_t(obj.maxClipDistances, "maxClipDistances", 1);
7259
7260 print_uint32_t(obj.maxCullDistances, "maxCullDistances", 1);
7261
7262 print_uint32_t(obj.maxCombinedClipAndCullDistances, "maxCombinedClipAndCullDistances", 1);
7263
7264 print_uint32_t(obj.discreteQueuePriorities, "discreteQueuePriorities", 1);
7265
7266 PRINT_SPACE
7267 _OUT << "\"pointSizeRange\":" << std::endl;
7268 PRINT_SPACE
7269 if (obj.pointSizeRange) {
7270 _OUT << "[" << std::endl;
7271 for (unsigned int i = 0; i < 2; i++) {
7272 bool isCommaNeeded = (i+1) != 2;
7273 print_float(obj.pointSizeRange[i], "", isCommaNeeded);
7274 }
7275 PRINT_SPACE
7276 _OUT << "]" << "," << std::endl;
7277 } else {
7278 _OUT << "\"NULL\"" << "," << std::endl;
7279 }
7280
7281 PRINT_SPACE
7282 _OUT << "\"lineWidthRange\":" << std::endl;
7283 PRINT_SPACE
7284 if (obj.lineWidthRange) {
7285 _OUT << "[" << std::endl;
7286 for (unsigned int i = 0; i < 2; i++) {
7287 bool isCommaNeeded = (i+1) != 2;
7288 print_float(obj.lineWidthRange[i], "", isCommaNeeded);
7289 }
7290 PRINT_SPACE
7291 _OUT << "]" << "," << std::endl;
7292 } else {
7293 _OUT << "\"NULL\"" << "," << std::endl;
7294 }
7295
7296 print_float(obj.pointSizeGranularity, "pointSizeGranularity", 1);
7297
7298 print_float(obj.lineWidthGranularity, "lineWidthGranularity", 1);
7299
7300 print_VkBool32(obj.strictLines, "strictLines", 1);
7301
7302 print_VkBool32(obj.standardSampleLocations, "standardSampleLocations", 1);
7303
7304 print_VkDeviceSize(obj.optimalBufferCopyOffsetAlignment, "optimalBufferCopyOffsetAlignment", 1);
7305
7306 print_VkDeviceSize(obj.optimalBufferCopyRowPitchAlignment, "optimalBufferCopyRowPitchAlignment", 1);
7307
7308 print_VkDeviceSize(obj.nonCoherentAtomSize, "nonCoherentAtomSize", 0);
7309
7310 INDENT(-4);
7311 PRINT_SPACE
7312 if (commaNeeded)
7313 _OUT << "}," << std::endl;
7314 else
7315 _OUT << "}" << std::endl;
7316 }
print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj,const std::string & s,bool commaNeeded=true)7317 static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, const std::string& s, bool commaNeeded=true) {
7318 PRINT_SPACE
7319 _OUT << "{" << std::endl;
7320 INDENT(4);
7321
7322 print_uint32_t(obj->maxImageDimension1D, "maxImageDimension1D", 1);
7323
7324 print_uint32_t(obj->maxImageDimension2D, "maxImageDimension2D", 1);
7325
7326 print_uint32_t(obj->maxImageDimension3D, "maxImageDimension3D", 1);
7327
7328 print_uint32_t(obj->maxImageDimensionCube, "maxImageDimensionCube", 1);
7329
7330 print_uint32_t(obj->maxImageArrayLayers, "maxImageArrayLayers", 1);
7331
7332 print_uint32_t(obj->maxTexelBufferElements, "maxTexelBufferElements", 1);
7333
7334 print_uint32_t(obj->maxUniformBufferRange, "maxUniformBufferRange", 1);
7335
7336 print_uint32_t(obj->maxStorageBufferRange, "maxStorageBufferRange", 1);
7337
7338 print_uint32_t(obj->maxPushConstantsSize, "maxPushConstantsSize", 1);
7339
7340 print_uint32_t(obj->maxMemoryAllocationCount, "maxMemoryAllocationCount", 1);
7341
7342 print_uint32_t(obj->maxSamplerAllocationCount, "maxSamplerAllocationCount", 1);
7343
7344 print_VkDeviceSize(obj->bufferImageGranularity, "bufferImageGranularity", 1);
7345
7346 print_VkDeviceSize(obj->sparseAddressSpaceSize, "sparseAddressSpaceSize", 1);
7347
7348 print_uint32_t(obj->maxBoundDescriptorSets, "maxBoundDescriptorSets", 1);
7349
7350 print_uint32_t(obj->maxPerStageDescriptorSamplers, "maxPerStageDescriptorSamplers", 1);
7351
7352 print_uint32_t(obj->maxPerStageDescriptorUniformBuffers, "maxPerStageDescriptorUniformBuffers", 1);
7353
7354 print_uint32_t(obj->maxPerStageDescriptorStorageBuffers, "maxPerStageDescriptorStorageBuffers", 1);
7355
7356 print_uint32_t(obj->maxPerStageDescriptorSampledImages, "maxPerStageDescriptorSampledImages", 1);
7357
7358 print_uint32_t(obj->maxPerStageDescriptorStorageImages, "maxPerStageDescriptorStorageImages", 1);
7359
7360 print_uint32_t(obj->maxPerStageDescriptorInputAttachments, "maxPerStageDescriptorInputAttachments", 1);
7361
7362 print_uint32_t(obj->maxPerStageResources, "maxPerStageResources", 1);
7363
7364 print_uint32_t(obj->maxDescriptorSetSamplers, "maxDescriptorSetSamplers", 1);
7365
7366 print_uint32_t(obj->maxDescriptorSetUniformBuffers, "maxDescriptorSetUniformBuffers", 1);
7367
7368 print_uint32_t(obj->maxDescriptorSetUniformBuffersDynamic, "maxDescriptorSetUniformBuffersDynamic", 1);
7369
7370 print_uint32_t(obj->maxDescriptorSetStorageBuffers, "maxDescriptorSetStorageBuffers", 1);
7371
7372 print_uint32_t(obj->maxDescriptorSetStorageBuffersDynamic, "maxDescriptorSetStorageBuffersDynamic", 1);
7373
7374 print_uint32_t(obj->maxDescriptorSetSampledImages, "maxDescriptorSetSampledImages", 1);
7375
7376 print_uint32_t(obj->maxDescriptorSetStorageImages, "maxDescriptorSetStorageImages", 1);
7377
7378 print_uint32_t(obj->maxDescriptorSetInputAttachments, "maxDescriptorSetInputAttachments", 1);
7379
7380 print_uint32_t(obj->maxVertexInputAttributes, "maxVertexInputAttributes", 1);
7381
7382 print_uint32_t(obj->maxVertexInputBindings, "maxVertexInputBindings", 1);
7383
7384 print_uint32_t(obj->maxVertexInputAttributeOffset, "maxVertexInputAttributeOffset", 1);
7385
7386 print_uint32_t(obj->maxVertexInputBindingStride, "maxVertexInputBindingStride", 1);
7387
7388 print_uint32_t(obj->maxVertexOutputComponents, "maxVertexOutputComponents", 1);
7389
7390 print_uint32_t(obj->maxTessellationGenerationLevel, "maxTessellationGenerationLevel", 1);
7391
7392 print_uint32_t(obj->maxTessellationPatchSize, "maxTessellationPatchSize", 1);
7393
7394 print_uint32_t(obj->maxTessellationControlPerVertexInputComponents, "maxTessellationControlPerVertexInputComponents", 1);
7395
7396 print_uint32_t(obj->maxTessellationControlPerVertexOutputComponents, "maxTessellationControlPerVertexOutputComponents", 1);
7397
7398 print_uint32_t(obj->maxTessellationControlPerPatchOutputComponents, "maxTessellationControlPerPatchOutputComponents", 1);
7399
7400 print_uint32_t(obj->maxTessellationControlTotalOutputComponents, "maxTessellationControlTotalOutputComponents", 1);
7401
7402 print_uint32_t(obj->maxTessellationEvaluationInputComponents, "maxTessellationEvaluationInputComponents", 1);
7403
7404 print_uint32_t(obj->maxTessellationEvaluationOutputComponents, "maxTessellationEvaluationOutputComponents", 1);
7405
7406 print_uint32_t(obj->maxGeometryShaderInvocations, "maxGeometryShaderInvocations", 1);
7407
7408 print_uint32_t(obj->maxGeometryInputComponents, "maxGeometryInputComponents", 1);
7409
7410 print_uint32_t(obj->maxGeometryOutputComponents, "maxGeometryOutputComponents", 1);
7411
7412 print_uint32_t(obj->maxGeometryOutputVertices, "maxGeometryOutputVertices", 1);
7413
7414 print_uint32_t(obj->maxGeometryTotalOutputComponents, "maxGeometryTotalOutputComponents", 1);
7415
7416 print_uint32_t(obj->maxFragmentInputComponents, "maxFragmentInputComponents", 1);
7417
7418 print_uint32_t(obj->maxFragmentOutputAttachments, "maxFragmentOutputAttachments", 1);
7419
7420 print_uint32_t(obj->maxFragmentDualSrcAttachments, "maxFragmentDualSrcAttachments", 1);
7421
7422 print_uint32_t(obj->maxFragmentCombinedOutputResources, "maxFragmentCombinedOutputResources", 1);
7423
7424 print_uint32_t(obj->maxComputeSharedMemorySize, "maxComputeSharedMemorySize", 1);
7425
7426 PRINT_SPACE
7427 _OUT << "\"maxComputeWorkGroupCount\":" << std::endl;
7428 PRINT_SPACE
7429 if (obj->maxComputeWorkGroupCount) {
7430 _OUT << "[" << std::endl;
7431 for (unsigned int i = 0; i < 3; i++) {
7432 bool isCommaNeeded = (i+1) != 3;
7433 print_uint32_t(obj->maxComputeWorkGroupCount[i], "", isCommaNeeded);
7434 }
7435 PRINT_SPACE
7436 _OUT << "]" << "," << std::endl;
7437 } else {
7438 _OUT << "\"NULL\"" << "," << std::endl;
7439 }
7440
7441 print_uint32_t(obj->maxComputeWorkGroupInvocations, "maxComputeWorkGroupInvocations", 1);
7442
7443 PRINT_SPACE
7444 _OUT << "\"maxComputeWorkGroupSize\":" << std::endl;
7445 PRINT_SPACE
7446 if (obj->maxComputeWorkGroupSize) {
7447 _OUT << "[" << std::endl;
7448 for (unsigned int i = 0; i < 3; i++) {
7449 bool isCommaNeeded = (i+1) != 3;
7450 print_uint32_t(obj->maxComputeWorkGroupSize[i], "", isCommaNeeded);
7451 }
7452 PRINT_SPACE
7453 _OUT << "]" << "," << std::endl;
7454 } else {
7455 _OUT << "\"NULL\"" << "," << std::endl;
7456 }
7457
7458 print_uint32_t(obj->subPixelPrecisionBits, "subPixelPrecisionBits", 1);
7459
7460 print_uint32_t(obj->subTexelPrecisionBits, "subTexelPrecisionBits", 1);
7461
7462 print_uint32_t(obj->mipmapPrecisionBits, "mipmapPrecisionBits", 1);
7463
7464 print_uint32_t(obj->maxDrawIndexedIndexValue, "maxDrawIndexedIndexValue", 1);
7465
7466 print_uint32_t(obj->maxDrawIndirectCount, "maxDrawIndirectCount", 1);
7467
7468 print_float(obj->maxSamplerLodBias, "maxSamplerLodBias", 1);
7469
7470 print_float(obj->maxSamplerAnisotropy, "maxSamplerAnisotropy", 1);
7471
7472 print_uint32_t(obj->maxViewports, "maxViewports", 1);
7473
7474 PRINT_SPACE
7475 _OUT << "\"maxViewportDimensions\":" << std::endl;
7476 PRINT_SPACE
7477 if (obj->maxViewportDimensions) {
7478 _OUT << "[" << std::endl;
7479 for (unsigned int i = 0; i < 2; i++) {
7480 bool isCommaNeeded = (i+1) != 2;
7481 print_uint32_t(obj->maxViewportDimensions[i], "", isCommaNeeded);
7482 }
7483 PRINT_SPACE
7484 _OUT << "]" << "," << std::endl;
7485 } else {
7486 _OUT << "\"NULL\"" << "," << std::endl;
7487 }
7488
7489 PRINT_SPACE
7490 _OUT << "\"viewportBoundsRange\":" << std::endl;
7491 PRINT_SPACE
7492 if (obj->viewportBoundsRange) {
7493 _OUT << "[" << std::endl;
7494 for (unsigned int i = 0; i < 2; i++) {
7495 bool isCommaNeeded = (i+1) != 2;
7496 print_float(obj->viewportBoundsRange[i], "", isCommaNeeded);
7497 }
7498 PRINT_SPACE
7499 _OUT << "]" << "," << std::endl;
7500 } else {
7501 _OUT << "\"NULL\"" << "," << std::endl;
7502 }
7503
7504 print_uint32_t(obj->viewportSubPixelBits, "viewportSubPixelBits", 1);
7505
7506 print_size_t(obj->minMemoryMapAlignment, "minMemoryMapAlignment", 1);
7507
7508 print_VkDeviceSize(obj->minTexelBufferOffsetAlignment, "minTexelBufferOffsetAlignment", 1);
7509
7510 print_VkDeviceSize(obj->minUniformBufferOffsetAlignment, "minUniformBufferOffsetAlignment", 1);
7511
7512 print_VkDeviceSize(obj->minStorageBufferOffsetAlignment, "minStorageBufferOffsetAlignment", 1);
7513
7514 print_int32_t(obj->minTexelOffset, "minTexelOffset", 1);
7515
7516 print_uint32_t(obj->maxTexelOffset, "maxTexelOffset", 1);
7517
7518 print_int32_t(obj->minTexelGatherOffset, "minTexelGatherOffset", 1);
7519
7520 print_uint32_t(obj->maxTexelGatherOffset, "maxTexelGatherOffset", 1);
7521
7522 print_float(obj->minInterpolationOffset, "minInterpolationOffset", 1);
7523
7524 print_float(obj->maxInterpolationOffset, "maxInterpolationOffset", 1);
7525
7526 print_uint32_t(obj->subPixelInterpolationOffsetBits, "subPixelInterpolationOffsetBits", 1);
7527
7528 print_uint32_t(obj->maxFramebufferWidth, "maxFramebufferWidth", 1);
7529
7530 print_uint32_t(obj->maxFramebufferHeight, "maxFramebufferHeight", 1);
7531
7532 print_uint32_t(obj->maxFramebufferLayers, "maxFramebufferLayers", 1);
7533
7534 print_VkSampleCountFlags(obj->framebufferColorSampleCounts, "framebufferColorSampleCounts", 1);
7535
7536 print_VkSampleCountFlags(obj->framebufferDepthSampleCounts, "framebufferDepthSampleCounts", 1);
7537
7538 print_VkSampleCountFlags(obj->framebufferStencilSampleCounts, "framebufferStencilSampleCounts", 1);
7539
7540 print_VkSampleCountFlags(obj->framebufferNoAttachmentsSampleCounts, "framebufferNoAttachmentsSampleCounts", 1);
7541
7542 print_uint32_t(obj->maxColorAttachments, "maxColorAttachments", 1);
7543
7544 print_VkSampleCountFlags(obj->sampledImageColorSampleCounts, "sampledImageColorSampleCounts", 1);
7545
7546 print_VkSampleCountFlags(obj->sampledImageIntegerSampleCounts, "sampledImageIntegerSampleCounts", 1);
7547
7548 print_VkSampleCountFlags(obj->sampledImageDepthSampleCounts, "sampledImageDepthSampleCounts", 1);
7549
7550 print_VkSampleCountFlags(obj->sampledImageStencilSampleCounts, "sampledImageStencilSampleCounts", 1);
7551
7552 print_VkSampleCountFlags(obj->storageImageSampleCounts, "storageImageSampleCounts", 1);
7553
7554 print_uint32_t(obj->maxSampleMaskWords, "maxSampleMaskWords", 1);
7555
7556 print_VkBool32(obj->timestampComputeAndGraphics, "timestampComputeAndGraphics", 1);
7557
7558 print_float(obj->timestampPeriod, "timestampPeriod", 1);
7559
7560 print_uint32_t(obj->maxClipDistances, "maxClipDistances", 1);
7561
7562 print_uint32_t(obj->maxCullDistances, "maxCullDistances", 1);
7563
7564 print_uint32_t(obj->maxCombinedClipAndCullDistances, "maxCombinedClipAndCullDistances", 1);
7565
7566 print_uint32_t(obj->discreteQueuePriorities, "discreteQueuePriorities", 1);
7567
7568 PRINT_SPACE
7569 _OUT << "\"pointSizeRange\":" << std::endl;
7570 PRINT_SPACE
7571 if (obj->pointSizeRange) {
7572 _OUT << "[" << std::endl;
7573 for (unsigned int i = 0; i < 2; i++) {
7574 bool isCommaNeeded = (i+1) != 2;
7575 print_float(obj->pointSizeRange[i], "", isCommaNeeded);
7576 }
7577 PRINT_SPACE
7578 _OUT << "]" << "," << std::endl;
7579 } else {
7580 _OUT << "\"NULL\"" << "," << std::endl;
7581 }
7582
7583 PRINT_SPACE
7584 _OUT << "\"lineWidthRange\":" << std::endl;
7585 PRINT_SPACE
7586 if (obj->lineWidthRange) {
7587 _OUT << "[" << std::endl;
7588 for (unsigned int i = 0; i < 2; i++) {
7589 bool isCommaNeeded = (i+1) != 2;
7590 print_float(obj->lineWidthRange[i], "", isCommaNeeded);
7591 }
7592 PRINT_SPACE
7593 _OUT << "]" << "," << std::endl;
7594 } else {
7595 _OUT << "\"NULL\"" << "," << std::endl;
7596 }
7597
7598 print_float(obj->pointSizeGranularity, "pointSizeGranularity", 1);
7599
7600 print_float(obj->lineWidthGranularity, "lineWidthGranularity", 1);
7601
7602 print_VkBool32(obj->strictLines, "strictLines", 1);
7603
7604 print_VkBool32(obj->standardSampleLocations, "standardSampleLocations", 1);
7605
7606 print_VkDeviceSize(obj->optimalBufferCopyOffsetAlignment, "optimalBufferCopyOffsetAlignment", 1);
7607
7608 print_VkDeviceSize(obj->optimalBufferCopyRowPitchAlignment, "optimalBufferCopyRowPitchAlignment", 1);
7609
7610 print_VkDeviceSize(obj->nonCoherentAtomSize, "nonCoherentAtomSize", 0);
7611
7612 INDENT(-4);
7613 PRINT_SPACE
7614 if (commaNeeded)
7615 _OUT << "}," << std::endl;
7616 else
7617 _OUT << "}" << std::endl;
7618 }
7619
print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj,const std::string & s,bool commaNeeded=true)7620 static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj, const std::string& s, bool commaNeeded=true) {
7621 PRINT_SPACE
7622 _OUT << "{" << std::endl;
7623 INDENT(4);
7624
7625 print_uint32_t(obj.memoryTypeCount, "memoryTypeCount", 1);
7626
7627 PRINT_SPACE
7628 _OUT << "\"memoryTypes\":" << std::endl;
7629 PRINT_SPACE
7630 if (obj.memoryTypes) {
7631 _OUT << "[" << std::endl;
7632 for (unsigned int i = 0; i < VK_MAX_MEMORY_TYPES; i++) {
7633 bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_TYPES;
7634 print_VkMemoryType(obj.memoryTypes[i], "", isCommaNeeded);
7635 }
7636 PRINT_SPACE
7637 _OUT << "]" << "," << std::endl;
7638 } else {
7639 _OUT << "\"NULL\"" << "," << std::endl;
7640 }
7641
7642 print_uint32_t(obj.memoryHeapCount, "memoryHeapCount", 1);
7643
7644 PRINT_SPACE
7645 _OUT << "\"memoryHeaps\":" << std::endl;
7646 PRINT_SPACE
7647 if (obj.memoryHeaps) {
7648 _OUT << "[" << std::endl;
7649 for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
7650 bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
7651 print_VkMemoryHeap(obj.memoryHeaps[i], "", isCommaNeeded);
7652 }
7653 PRINT_SPACE
7654 _OUT << "]" << "" << std::endl;
7655 } else {
7656 _OUT << "\"NULL\"" << "" << std::endl;
7657 }
7658
7659 INDENT(-4);
7660 PRINT_SPACE
7661 if (commaNeeded)
7662 _OUT << "}," << std::endl;
7663 else
7664 _OUT << "}" << std::endl;
7665 }
print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * obj,const std::string & s,bool commaNeeded=true)7666 static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * obj, const std::string& s, bool commaNeeded=true) {
7667 PRINT_SPACE
7668 _OUT << "{" << std::endl;
7669 INDENT(4);
7670
7671 print_uint32_t(obj->memoryTypeCount, "memoryTypeCount", 1);
7672
7673 PRINT_SPACE
7674 _OUT << "\"memoryTypes\":" << std::endl;
7675 PRINT_SPACE
7676 if (obj->memoryTypes) {
7677 _OUT << "[" << std::endl;
7678 for (unsigned int i = 0; i < VK_MAX_MEMORY_TYPES; i++) {
7679 bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_TYPES;
7680 print_VkMemoryType(obj->memoryTypes[i], "", isCommaNeeded);
7681 }
7682 PRINT_SPACE
7683 _OUT << "]" << "," << std::endl;
7684 } else {
7685 _OUT << "\"NULL\"" << "," << std::endl;
7686 }
7687
7688 print_uint32_t(obj->memoryHeapCount, "memoryHeapCount", 1);
7689
7690 PRINT_SPACE
7691 _OUT << "\"memoryHeaps\":" << std::endl;
7692 PRINT_SPACE
7693 if (obj->memoryHeaps) {
7694 _OUT << "[" << std::endl;
7695 for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
7696 bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
7697 print_VkMemoryHeap(obj->memoryHeaps[i], "", isCommaNeeded);
7698 }
7699 PRINT_SPACE
7700 _OUT << "]" << "" << std::endl;
7701 } else {
7702 _OUT << "\"NULL\"" << "" << std::endl;
7703 }
7704
7705 INDENT(-4);
7706 PRINT_SPACE
7707 if (commaNeeded)
7708 _OUT << "}," << std::endl;
7709 else
7710 _OUT << "}" << std::endl;
7711 }
7712
print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj,const std::string & s,bool commaNeeded=true)7713 static void print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj, const std::string& s, bool commaNeeded=true) {
7714 PRINT_SPACE
7715 _OUT << "{" << std::endl;
7716 INDENT(4);
7717
7718 print_VkBool32(obj.residencyStandard2DBlockShape, "residencyStandard2DBlockShape", 1);
7719
7720 print_VkBool32(obj.residencyStandard2DMultisampleBlockShape, "residencyStandard2DMultisampleBlockShape", 1);
7721
7722 print_VkBool32(obj.residencyStandard3DBlockShape, "residencyStandard3DBlockShape", 1);
7723
7724 print_VkBool32(obj.residencyAlignedMipSize, "residencyAlignedMipSize", 1);
7725
7726 print_VkBool32(obj.residencyNonResidentStrict, "residencyNonResidentStrict", 0);
7727
7728 INDENT(-4);
7729 PRINT_SPACE
7730 if (commaNeeded)
7731 _OUT << "}," << std::endl;
7732 else
7733 _OUT << "}" << std::endl;
7734 }
print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * obj,const std::string & s,bool commaNeeded=true)7735 static void print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * obj, const std::string& s, bool commaNeeded=true) {
7736 PRINT_SPACE
7737 _OUT << "{" << std::endl;
7738 INDENT(4);
7739
7740 print_VkBool32(obj->residencyStandard2DBlockShape, "residencyStandard2DBlockShape", 1);
7741
7742 print_VkBool32(obj->residencyStandard2DMultisampleBlockShape, "residencyStandard2DMultisampleBlockShape", 1);
7743
7744 print_VkBool32(obj->residencyStandard3DBlockShape, "residencyStandard3DBlockShape", 1);
7745
7746 print_VkBool32(obj->residencyAlignedMipSize, "residencyAlignedMipSize", 1);
7747
7748 print_VkBool32(obj->residencyNonResidentStrict, "residencyNonResidentStrict", 0);
7749
7750 INDENT(-4);
7751 PRINT_SPACE
7752 if (commaNeeded)
7753 _OUT << "}," << std::endl;
7754 else
7755 _OUT << "}" << std::endl;
7756 }
7757
print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj,const std::string & s,bool commaNeeded=true)7758 static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, const std::string& s, bool commaNeeded=true) {
7759 PRINT_SPACE
7760 _OUT << "{" << std::endl;
7761 INDENT(4);
7762
7763 print_uint32_t(obj.apiVersion, "apiVersion", 1);
7764
7765 print_uint32_t(obj.driverVersion, "driverVersion", 1);
7766
7767 print_uint32_t(obj.vendorID, "vendorID", 1);
7768
7769 print_uint32_t(obj.deviceID, "deviceID", 1);
7770
7771 print_VkPhysicalDeviceType(obj.deviceType, "deviceType", 1);
7772
7773 PRINT_SPACE
7774 _OUT << "\"deviceName\":" << std::endl;
7775 PRINT_SPACE
7776 if (obj.deviceName) {
7777 _OUT << "[" << std::endl;
7778 for (unsigned int i = 0; i < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE; i++) {
7779 bool isCommaNeeded = (i+1) != VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
7780 print_char(obj.deviceName[i], "", isCommaNeeded);
7781 }
7782 PRINT_SPACE
7783 _OUT << "]" << "," << std::endl;
7784 } else {
7785 _OUT << "\"NULL\"" << "," << std::endl;
7786 }
7787
7788 PRINT_SPACE
7789 _OUT << "\"pipelineCacheUUID\":" << std::endl;
7790 PRINT_SPACE
7791 if (obj.pipelineCacheUUID) {
7792 _OUT << "[" << std::endl;
7793 for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
7794 bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
7795 print_uint8_t(obj.pipelineCacheUUID[i], "", isCommaNeeded);
7796 }
7797 PRINT_SPACE
7798 _OUT << "]" << "," << std::endl;
7799 } else {
7800 _OUT << "\"NULL\"" << "," << std::endl;
7801 }
7802
7803 PRINT_SPACE
7804 _OUT << "\"limits\": " << std::endl;
7805 {
7806 print_VkPhysicalDeviceLimits(obj.limits, "limits", 1);
7807 }
7808
7809 PRINT_SPACE
7810 _OUT << "\"sparseProperties\": " << std::endl;
7811 {
7812 print_VkPhysicalDeviceSparseProperties(obj.sparseProperties, "sparseProperties", 0);
7813 }
7814
7815 INDENT(-4);
7816 PRINT_SPACE
7817 if (commaNeeded)
7818 _OUT << "}," << std::endl;
7819 else
7820 _OUT << "}" << std::endl;
7821 }
print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * obj,const std::string & s,bool commaNeeded=true)7822 static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * obj, const std::string& s, bool commaNeeded=true) {
7823 PRINT_SPACE
7824 _OUT << "{" << std::endl;
7825 INDENT(4);
7826
7827 print_uint32_t(obj->apiVersion, "apiVersion", 1);
7828
7829 print_uint32_t(obj->driverVersion, "driverVersion", 1);
7830
7831 print_uint32_t(obj->vendorID, "vendorID", 1);
7832
7833 print_uint32_t(obj->deviceID, "deviceID", 1);
7834
7835 print_VkPhysicalDeviceType(obj->deviceType, "deviceType", 1);
7836
7837 PRINT_SPACE
7838 _OUT << "\"deviceName\":" << std::endl;
7839 PRINT_SPACE
7840 if (obj->deviceName) {
7841 _OUT << "[" << std::endl;
7842 for (unsigned int i = 0; i < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE; i++) {
7843 bool isCommaNeeded = (i+1) != VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
7844 print_char(obj->deviceName[i], "", isCommaNeeded);
7845 }
7846 PRINT_SPACE
7847 _OUT << "]" << "," << std::endl;
7848 } else {
7849 _OUT << "\"NULL\"" << "," << std::endl;
7850 }
7851
7852 PRINT_SPACE
7853 _OUT << "\"pipelineCacheUUID\":" << std::endl;
7854 PRINT_SPACE
7855 if (obj->pipelineCacheUUID) {
7856 _OUT << "[" << std::endl;
7857 for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
7858 bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
7859 print_uint8_t(obj->pipelineCacheUUID[i], "", isCommaNeeded);
7860 }
7861 PRINT_SPACE
7862 _OUT << "]" << "," << std::endl;
7863 } else {
7864 _OUT << "\"NULL\"" << "," << std::endl;
7865 }
7866
7867 PRINT_SPACE
7868 _OUT << "\"limits\": " << std::endl;
7869 {
7870 print_VkPhysicalDeviceLimits(obj->limits, "limits", 1);
7871 }
7872
7873 PRINT_SPACE
7874 _OUT << "\"sparseProperties\": " << std::endl;
7875 {
7876 print_VkPhysicalDeviceSparseProperties(obj->sparseProperties, "sparseProperties", 0);
7877 }
7878
7879 INDENT(-4);
7880 PRINT_SPACE
7881 if (commaNeeded)
7882 _OUT << "}," << std::endl;
7883 else
7884 _OUT << "}" << std::endl;
7885 }
7886
print_VkQueueFamilyProperties(VkQueueFamilyProperties obj,const std::string & s,bool commaNeeded=true)7887 static void print_VkQueueFamilyProperties(VkQueueFamilyProperties obj, const std::string& s, bool commaNeeded=true) {
7888 PRINT_SPACE
7889 _OUT << "{" << std::endl;
7890 INDENT(4);
7891
7892 print_VkQueueFlags(obj.queueFlags, "queueFlags", 1);
7893
7894 print_uint32_t(obj.queueCount, "queueCount", 1);
7895
7896 print_uint32_t(obj.timestampValidBits, "timestampValidBits", 1);
7897
7898 PRINT_SPACE
7899 _OUT << "\"minImageTransferGranularity\": " << std::endl;
7900 {
7901 print_VkExtent3D(obj.minImageTransferGranularity, "minImageTransferGranularity", 0);
7902 }
7903
7904 INDENT(-4);
7905 PRINT_SPACE
7906 if (commaNeeded)
7907 _OUT << "}," << std::endl;
7908 else
7909 _OUT << "}" << std::endl;
7910 }
print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj,const std::string & s,bool commaNeeded=true)7911 static void print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj, const std::string& s, bool commaNeeded=true) {
7912 PRINT_SPACE
7913 _OUT << "{" << std::endl;
7914 INDENT(4);
7915
7916 print_VkQueueFlags(obj->queueFlags, "queueFlags", 1);
7917
7918 print_uint32_t(obj->queueCount, "queueCount", 1);
7919
7920 print_uint32_t(obj->timestampValidBits, "timestampValidBits", 1);
7921
7922 PRINT_SPACE
7923 _OUT << "\"minImageTransferGranularity\": " << std::endl;
7924 {
7925 print_VkExtent3D(obj->minImageTransferGranularity, "minImageTransferGranularity", 0);
7926 }
7927
7928 INDENT(-4);
7929 PRINT_SPACE
7930 if (commaNeeded)
7931 _OUT << "}," << std::endl;
7932 else
7933 _OUT << "}" << std::endl;
7934 }
7935
print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj,const std::string & s,bool commaNeeded=true)7936 static void print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj, const std::string& s, bool commaNeeded=true) {
7937 PRINT_SPACE
7938 _OUT << "{" << std::endl;
7939 INDENT(4);
7940
7941 print_VkStructureType(obj.sType, "sType", 1);
7942
7943 if (obj.pNext) {
7944 dumpPNextChain(obj.pNext);
7945 } else {
7946 PRINT_SPACE
7947 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
7948 }
7949
7950 print_VkDeviceQueueCreateFlags(obj.flags, "flags", 1);
7951
7952 print_uint32_t(obj.queueFamilyIndex, "queueFamilyIndex", 1);
7953
7954 print_uint32_t(obj.queueCount, "queueCount", 1);
7955
7956 PRINT_SPACE
7957 _OUT << "\"pQueuePriorities\":" << std::endl;
7958 PRINT_SPACE
7959 if (obj.pQueuePriorities) {
7960 _OUT << "[" << std::endl;
7961 for (unsigned int i = 0; i < obj.queueCount; i++) {
7962 bool isCommaNeeded = (i+1) != obj.queueCount;
7963 print_float(obj.pQueuePriorities[i], "", isCommaNeeded);
7964 }
7965 PRINT_SPACE
7966 _OUT << "]" << "" << std::endl;
7967 } else {
7968 _OUT << "\"NULL\"" << "" << std::endl;
7969 }
7970
7971 INDENT(-4);
7972 PRINT_SPACE
7973 if (commaNeeded)
7974 _OUT << "}," << std::endl;
7975 else
7976 _OUT << "}" << std::endl;
7977 }
print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj,const std::string & s,bool commaNeeded=true)7978 static void print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
7979 PRINT_SPACE
7980 _OUT << "{" << std::endl;
7981 INDENT(4);
7982
7983 print_VkStructureType(obj->sType, "sType", 1);
7984
7985 if (obj->pNext) {
7986 dumpPNextChain(obj->pNext);
7987 } else {
7988 PRINT_SPACE
7989 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
7990 }
7991
7992 print_VkDeviceQueueCreateFlags(obj->flags, "flags", 1);
7993
7994 print_uint32_t(obj->queueFamilyIndex, "queueFamilyIndex", 1);
7995
7996 print_uint32_t(obj->queueCount, "queueCount", 1);
7997
7998 PRINT_SPACE
7999 _OUT << "\"pQueuePriorities\":" << std::endl;
8000 PRINT_SPACE
8001 if (obj->pQueuePriorities) {
8002 _OUT << "[" << std::endl;
8003 for (unsigned int i = 0; i < obj->queueCount; i++) {
8004 bool isCommaNeeded = (i+1) != obj->queueCount;
8005 print_float(obj->pQueuePriorities[i], "", isCommaNeeded);
8006 }
8007 PRINT_SPACE
8008 _OUT << "]" << "" << std::endl;
8009 } else {
8010 _OUT << "\"NULL\"" << "" << std::endl;
8011 }
8012
8013 INDENT(-4);
8014 PRINT_SPACE
8015 if (commaNeeded)
8016 _OUT << "}," << std::endl;
8017 else
8018 _OUT << "}" << std::endl;
8019 }
8020
print_VkDeviceCreateInfo(VkDeviceCreateInfo obj,const std::string & s,bool commaNeeded=true)8021 static void print_VkDeviceCreateInfo(VkDeviceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8022 PRINT_SPACE
8023 _OUT << "{" << std::endl;
8024 INDENT(4);
8025
8026 print_VkStructureType(obj.sType, "sType", 1);
8027
8028 if (obj.pNext) {
8029 dumpPNextChain(obj.pNext);
8030 } else {
8031 PRINT_SPACE
8032 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8033 }
8034
8035 print_VkDeviceCreateFlags(obj.flags, "flags", 1);
8036
8037 print_uint32_t(obj.queueCreateInfoCount, "queueCreateInfoCount", 1);
8038
8039 PRINT_SPACE
8040 _OUT << "\"pQueueCreateInfos\": " << std::endl;
8041 if (obj.pQueueCreateInfos) {
8042 PRINT_SPACE
8043 _OUT << "[" << std::endl;
8044 for (unsigned int i = 0; i < obj.queueCreateInfoCount; i++) {
8045 if (i+1 == obj.queueCreateInfoCount)
8046 print_VkDeviceQueueCreateInfo(obj.pQueueCreateInfos[i], "pQueueCreateInfos", 0);
8047 else
8048 print_VkDeviceQueueCreateInfo(obj.pQueueCreateInfos[i], "pQueueCreateInfos", 1);
8049 }
8050 PRINT_SPACE
8051 _OUT << "]," << std::endl;
8052 }
8053 else
8054 {
8055 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
8056 }
8057
8058 print_uint32_t(obj.enabledLayerCount, "enabledLayerCount", 1);
8059
8060 print_char(obj.ppEnabledLayerNames, "ppEnabledLayerNames", 1);
8061
8062 print_uint32_t(obj.enabledExtensionCount, "enabledExtensionCount", 1);
8063
8064 print_char(obj.ppEnabledExtensionNames, "ppEnabledExtensionNames", 1);
8065
8066 PRINT_SPACE
8067 _OUT << "\"pEnabledFeatures\": " << std::endl;
8068 if (obj.pEnabledFeatures) {
8069 print_VkPhysicalDeviceFeatures(obj.pEnabledFeatures, "pEnabledFeatures", 0);
8070 }
8071 else
8072 {
8073 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
8074 }
8075
8076 INDENT(-4);
8077 PRINT_SPACE
8078 if (commaNeeded)
8079 _OUT << "}," << std::endl;
8080 else
8081 _OUT << "}" << std::endl;
8082 }
print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj,const std::string & s,bool commaNeeded=true)8083 static void print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8084 PRINT_SPACE
8085 _OUT << "{" << std::endl;
8086 INDENT(4);
8087
8088 print_VkStructureType(obj->sType, "sType", 1);
8089
8090 if (obj->pNext) {
8091 dumpPNextChain(obj->pNext);
8092 } else {
8093 PRINT_SPACE
8094 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8095 }
8096
8097 print_VkDeviceCreateFlags(obj->flags, "flags", 1);
8098
8099 print_uint32_t(obj->queueCreateInfoCount, "queueCreateInfoCount", 1);
8100
8101 PRINT_SPACE
8102 _OUT << "\"pQueueCreateInfos\": " << std::endl;
8103 if (obj->pQueueCreateInfos) {
8104 PRINT_SPACE
8105 _OUT << "[" << std::endl;
8106 for (unsigned int i = 0; i < obj->queueCreateInfoCount; i++) {
8107 if (i+1 == obj->queueCreateInfoCount)
8108 print_VkDeviceQueueCreateInfo(obj->pQueueCreateInfos[i], "pQueueCreateInfos", 0);
8109 else
8110 print_VkDeviceQueueCreateInfo(obj->pQueueCreateInfos[i], "pQueueCreateInfos", 1);
8111 }
8112 PRINT_SPACE
8113 _OUT << "]," << std::endl;
8114 }
8115 else
8116 {
8117 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
8118 }
8119
8120 print_uint32_t(obj->enabledLayerCount, "enabledLayerCount", 1);
8121
8122 print_char(obj->ppEnabledLayerNames, "ppEnabledLayerNames", 1);
8123
8124 print_uint32_t(obj->enabledExtensionCount, "enabledExtensionCount", 1);
8125
8126 print_char(obj->ppEnabledExtensionNames, "ppEnabledExtensionNames", 1);
8127
8128 PRINT_SPACE
8129 _OUT << "\"pEnabledFeatures\": " << std::endl;
8130 if (obj->pEnabledFeatures) {
8131 print_VkPhysicalDeviceFeatures(obj->pEnabledFeatures, "pEnabledFeatures", 0);
8132 }
8133 else
8134 {
8135 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
8136 }
8137
8138 INDENT(-4);
8139 PRINT_SPACE
8140 if (commaNeeded)
8141 _OUT << "}," << std::endl;
8142 else
8143 _OUT << "}" << std::endl;
8144 }
8145
print_VkExtensionProperties(VkExtensionProperties obj,const std::string & s,bool commaNeeded=true)8146 static void print_VkExtensionProperties(VkExtensionProperties obj, const std::string& s, bool commaNeeded=true) {
8147 PRINT_SPACE
8148 _OUT << "{" << std::endl;
8149 INDENT(4);
8150
8151 PRINT_SPACE
8152 _OUT << "\"extensionName\":" << std::endl;
8153 PRINT_SPACE
8154 if (obj.extensionName) {
8155 _OUT << "[" << std::endl;
8156 for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
8157 bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
8158 print_char(obj.extensionName[i], "", isCommaNeeded);
8159 }
8160 PRINT_SPACE
8161 _OUT << "]" << "," << std::endl;
8162 } else {
8163 _OUT << "\"NULL\"" << "," << std::endl;
8164 }
8165
8166 print_uint32_t(obj.specVersion, "specVersion", 0);
8167
8168 INDENT(-4);
8169 PRINT_SPACE
8170 if (commaNeeded)
8171 _OUT << "}," << std::endl;
8172 else
8173 _OUT << "}" << std::endl;
8174 }
print_VkExtensionProperties(const VkExtensionProperties * obj,const std::string & s,bool commaNeeded=true)8175 static void print_VkExtensionProperties(const VkExtensionProperties * obj, const std::string& s, bool commaNeeded=true) {
8176 PRINT_SPACE
8177 _OUT << "{" << std::endl;
8178 INDENT(4);
8179
8180 PRINT_SPACE
8181 _OUT << "\"extensionName\":" << std::endl;
8182 PRINT_SPACE
8183 if (obj->extensionName) {
8184 _OUT << "[" << std::endl;
8185 for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
8186 bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
8187 print_char(obj->extensionName[i], "", isCommaNeeded);
8188 }
8189 PRINT_SPACE
8190 _OUT << "]" << "," << std::endl;
8191 } else {
8192 _OUT << "\"NULL\"" << "," << std::endl;
8193 }
8194
8195 print_uint32_t(obj->specVersion, "specVersion", 0);
8196
8197 INDENT(-4);
8198 PRINT_SPACE
8199 if (commaNeeded)
8200 _OUT << "}," << std::endl;
8201 else
8202 _OUT << "}" << std::endl;
8203 }
8204
print_VkLayerProperties(VkLayerProperties obj,const std::string & s,bool commaNeeded=true)8205 static void print_VkLayerProperties(VkLayerProperties obj, const std::string& s, bool commaNeeded=true) {
8206 PRINT_SPACE
8207 _OUT << "{" << std::endl;
8208 INDENT(4);
8209
8210 PRINT_SPACE
8211 _OUT << "\"layerName\":" << std::endl;
8212 PRINT_SPACE
8213 if (obj.layerName) {
8214 _OUT << "[" << std::endl;
8215 for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
8216 bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
8217 print_char(obj.layerName[i], "", isCommaNeeded);
8218 }
8219 PRINT_SPACE
8220 _OUT << "]" << "," << std::endl;
8221 } else {
8222 _OUT << "\"NULL\"" << "," << std::endl;
8223 }
8224
8225 print_uint32_t(obj.specVersion, "specVersion", 1);
8226
8227 print_uint32_t(obj.implementationVersion, "implementationVersion", 1);
8228
8229 PRINT_SPACE
8230 _OUT << "\"description\":" << std::endl;
8231 PRINT_SPACE
8232 if (obj.description) {
8233 _OUT << "[" << std::endl;
8234 for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
8235 bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
8236 print_char(obj.description[i], "", isCommaNeeded);
8237 }
8238 PRINT_SPACE
8239 _OUT << "]" << "" << std::endl;
8240 } else {
8241 _OUT << "\"NULL\"" << "" << std::endl;
8242 }
8243
8244 INDENT(-4);
8245 PRINT_SPACE
8246 if (commaNeeded)
8247 _OUT << "}," << std::endl;
8248 else
8249 _OUT << "}" << std::endl;
8250 }
print_VkLayerProperties(const VkLayerProperties * obj,const std::string & s,bool commaNeeded=true)8251 static void print_VkLayerProperties(const VkLayerProperties * obj, const std::string& s, bool commaNeeded=true) {
8252 PRINT_SPACE
8253 _OUT << "{" << std::endl;
8254 INDENT(4);
8255
8256 PRINT_SPACE
8257 _OUT << "\"layerName\":" << std::endl;
8258 PRINT_SPACE
8259 if (obj->layerName) {
8260 _OUT << "[" << std::endl;
8261 for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
8262 bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
8263 print_char(obj->layerName[i], "", isCommaNeeded);
8264 }
8265 PRINT_SPACE
8266 _OUT << "]" << "," << std::endl;
8267 } else {
8268 _OUT << "\"NULL\"" << "," << std::endl;
8269 }
8270
8271 print_uint32_t(obj->specVersion, "specVersion", 1);
8272
8273 print_uint32_t(obj->implementationVersion, "implementationVersion", 1);
8274
8275 PRINT_SPACE
8276 _OUT << "\"description\":" << std::endl;
8277 PRINT_SPACE
8278 if (obj->description) {
8279 _OUT << "[" << std::endl;
8280 for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
8281 bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
8282 print_char(obj->description[i], "", isCommaNeeded);
8283 }
8284 PRINT_SPACE
8285 _OUT << "]" << "" << std::endl;
8286 } else {
8287 _OUT << "\"NULL\"" << "" << std::endl;
8288 }
8289
8290 INDENT(-4);
8291 PRINT_SPACE
8292 if (commaNeeded)
8293 _OUT << "}," << std::endl;
8294 else
8295 _OUT << "}" << std::endl;
8296 }
8297
print_VkSubmitInfo(VkSubmitInfo obj,const std::string & s,bool commaNeeded=true)8298 static void print_VkSubmitInfo(VkSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
8299 PRINT_SPACE
8300 _OUT << "{" << std::endl;
8301 INDENT(4);
8302
8303 print_VkStructureType(obj.sType, "sType", 1);
8304
8305 if (obj.pNext) {
8306 dumpPNextChain(obj.pNext);
8307 } else {
8308 PRINT_SPACE
8309 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8310 }
8311
8312 print_uint32_t(obj.waitSemaphoreCount, "waitSemaphoreCount", 1);
8313
8314 PRINT_SPACE
8315 _OUT << "\"pWaitSemaphores\":" << std::endl;
8316 PRINT_SPACE
8317 if (obj.pWaitSemaphores) {
8318 _OUT << "[" << std::endl;
8319 for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++) {
8320 std:: stringstream tmp;
8321 tmp << "pWaitSemaphores" << "_" << i;
8322 bool isCommaNeeded = (i+1) != obj.waitSemaphoreCount;
8323 print_VkSemaphore(obj.pWaitSemaphores[i], tmp.str(), isCommaNeeded);
8324 }
8325 PRINT_SPACE
8326 _OUT << "]" << "," << std::endl;
8327 } else {
8328 _OUT << "\"NULL\"" << "," << std::endl;
8329 }
8330
8331 PRINT_SPACE
8332 _OUT << "\"pWaitDstStageMask\":" << std::endl;
8333 PRINT_SPACE
8334 if (obj.pWaitDstStageMask) {
8335 _OUT << "[" << std::endl;
8336 for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++) {
8337 bool isCommaNeeded = (i+1) != obj.waitSemaphoreCount;
8338 print_VkPipelineStageFlags(obj.pWaitDstStageMask[i], "", isCommaNeeded);
8339 }
8340 PRINT_SPACE
8341 _OUT << "]" << "," << std::endl;
8342 } else {
8343 _OUT << "\"NULL\"" << "," << std::endl;
8344 }
8345
8346 print_uint32_t(obj.commandBufferCount, "commandBufferCount", 1);
8347
8348 PRINT_SPACE
8349 _OUT << "\"pCommandBuffers\":" << std::endl;
8350 PRINT_SPACE
8351 if (obj.pCommandBuffers) {
8352 _OUT << "[" << std::endl;
8353 for (unsigned int i = 0; i < obj.commandBufferCount; i++) {
8354 std:: stringstream tmp;
8355 tmp << "pCommandBuffers" << "_" << i;
8356 bool isCommaNeeded = (i+1) != obj.commandBufferCount;
8357 print_VkCommandBuffer(obj.pCommandBuffers[i], tmp.str(), isCommaNeeded);
8358 }
8359 PRINT_SPACE
8360 _OUT << "]" << "," << std::endl;
8361 } else {
8362 _OUT << "\"NULL\"" << "," << std::endl;
8363 }
8364
8365 print_uint32_t(obj.signalSemaphoreCount, "signalSemaphoreCount", 1);
8366
8367 PRINT_SPACE
8368 _OUT << "\"pSignalSemaphores\":" << std::endl;
8369 PRINT_SPACE
8370 if (obj.pSignalSemaphores) {
8371 _OUT << "[" << std::endl;
8372 for (unsigned int i = 0; i < obj.signalSemaphoreCount; i++) {
8373 std:: stringstream tmp;
8374 tmp << "pSignalSemaphores" << "_" << i;
8375 bool isCommaNeeded = (i+1) != obj.signalSemaphoreCount;
8376 print_VkSemaphore(obj.pSignalSemaphores[i], tmp.str(), isCommaNeeded);
8377 }
8378 PRINT_SPACE
8379 _OUT << "]" << "" << std::endl;
8380 } else {
8381 _OUT << "\"NULL\"" << "" << std::endl;
8382 }
8383
8384 INDENT(-4);
8385 PRINT_SPACE
8386 if (commaNeeded)
8387 _OUT << "}," << std::endl;
8388 else
8389 _OUT << "}" << std::endl;
8390 }
print_VkSubmitInfo(const VkSubmitInfo * obj,const std::string & s,bool commaNeeded=true)8391 static void print_VkSubmitInfo(const VkSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
8392 PRINT_SPACE
8393 _OUT << "{" << std::endl;
8394 INDENT(4);
8395
8396 print_VkStructureType(obj->sType, "sType", 1);
8397
8398 if (obj->pNext) {
8399 dumpPNextChain(obj->pNext);
8400 } else {
8401 PRINT_SPACE
8402 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8403 }
8404
8405 print_uint32_t(obj->waitSemaphoreCount, "waitSemaphoreCount", 1);
8406
8407 PRINT_SPACE
8408 _OUT << "\"pWaitSemaphores\":" << std::endl;
8409 PRINT_SPACE
8410 if (obj->pWaitSemaphores) {
8411 _OUT << "[" << std::endl;
8412 for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++) {
8413 std:: stringstream tmp;
8414 tmp << "pWaitSemaphores" << "_" << i;
8415 bool isCommaNeeded = (i+1) != obj->waitSemaphoreCount;
8416 print_VkSemaphore(obj->pWaitSemaphores[i], tmp.str(), isCommaNeeded);
8417 }
8418 PRINT_SPACE
8419 _OUT << "]" << "," << std::endl;
8420 } else {
8421 _OUT << "\"NULL\"" << "," << std::endl;
8422 }
8423
8424 PRINT_SPACE
8425 _OUT << "\"pWaitDstStageMask\":" << std::endl;
8426 PRINT_SPACE
8427 if (obj->pWaitDstStageMask) {
8428 _OUT << "[" << std::endl;
8429 for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++) {
8430 bool isCommaNeeded = (i+1) != obj->waitSemaphoreCount;
8431 print_VkPipelineStageFlags(obj->pWaitDstStageMask[i], "", isCommaNeeded);
8432 }
8433 PRINT_SPACE
8434 _OUT << "]" << "," << std::endl;
8435 } else {
8436 _OUT << "\"NULL\"" << "," << std::endl;
8437 }
8438
8439 print_uint32_t(obj->commandBufferCount, "commandBufferCount", 1);
8440
8441 PRINT_SPACE
8442 _OUT << "\"pCommandBuffers\":" << std::endl;
8443 PRINT_SPACE
8444 if (obj->pCommandBuffers) {
8445 _OUT << "[" << std::endl;
8446 for (unsigned int i = 0; i < obj->commandBufferCount; i++) {
8447 std:: stringstream tmp;
8448 tmp << "pCommandBuffers" << "_" << i;
8449 bool isCommaNeeded = (i+1) != obj->commandBufferCount;
8450 print_VkCommandBuffer(obj->pCommandBuffers[i], tmp.str(), isCommaNeeded);
8451 }
8452 PRINT_SPACE
8453 _OUT << "]" << "," << std::endl;
8454 } else {
8455 _OUT << "\"NULL\"" << "," << std::endl;
8456 }
8457
8458 print_uint32_t(obj->signalSemaphoreCount, "signalSemaphoreCount", 1);
8459
8460 PRINT_SPACE
8461 _OUT << "\"pSignalSemaphores\":" << std::endl;
8462 PRINT_SPACE
8463 if (obj->pSignalSemaphores) {
8464 _OUT << "[" << std::endl;
8465 for (unsigned int i = 0; i < obj->signalSemaphoreCount; i++) {
8466 std:: stringstream tmp;
8467 tmp << "pSignalSemaphores" << "_" << i;
8468 bool isCommaNeeded = (i+1) != obj->signalSemaphoreCount;
8469 print_VkSemaphore(obj->pSignalSemaphores[i], tmp.str(), isCommaNeeded);
8470 }
8471 PRINT_SPACE
8472 _OUT << "]" << "" << std::endl;
8473 } else {
8474 _OUT << "\"NULL\"" << "" << std::endl;
8475 }
8476
8477 INDENT(-4);
8478 PRINT_SPACE
8479 if (commaNeeded)
8480 _OUT << "}," << std::endl;
8481 else
8482 _OUT << "}" << std::endl;
8483 }
8484
print_VkMappedMemoryRange(VkMappedMemoryRange obj,const std::string & s,bool commaNeeded=true)8485 static void print_VkMappedMemoryRange(VkMappedMemoryRange obj, const std::string& s, bool commaNeeded=true) {
8486 PRINT_SPACE
8487 _OUT << "{" << std::endl;
8488 INDENT(4);
8489
8490 print_VkStructureType(obj.sType, "sType", 1);
8491
8492 if (obj.pNext) {
8493 dumpPNextChain(obj.pNext);
8494 } else {
8495 PRINT_SPACE
8496 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8497 }
8498
8499 // CTS : required value
8500 PRINT_SPACE _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
8501
8502 print_VkDeviceSize(obj.offset, "offset", 1);
8503
8504 print_VkDeviceSize(obj.size, "size", 0);
8505
8506 INDENT(-4);
8507 PRINT_SPACE
8508 if (commaNeeded)
8509 _OUT << "}," << std::endl;
8510 else
8511 _OUT << "}" << std::endl;
8512 }
print_VkMappedMemoryRange(const VkMappedMemoryRange * obj,const std::string & s,bool commaNeeded=true)8513 static void print_VkMappedMemoryRange(const VkMappedMemoryRange * obj, const std::string& s, bool commaNeeded=true) {
8514 PRINT_SPACE
8515 _OUT << "{" << std::endl;
8516 INDENT(4);
8517
8518 print_VkStructureType(obj->sType, "sType", 1);
8519
8520 if (obj->pNext) {
8521 dumpPNextChain(obj->pNext);
8522 } else {
8523 PRINT_SPACE
8524 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8525 }
8526
8527 // CTS : required value
8528 PRINT_SPACE _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
8529
8530 print_VkDeviceSize(obj->offset, "offset", 1);
8531
8532 print_VkDeviceSize(obj->size, "size", 0);
8533
8534 INDENT(-4);
8535 PRINT_SPACE
8536 if (commaNeeded)
8537 _OUT << "}," << std::endl;
8538 else
8539 _OUT << "}" << std::endl;
8540 }
8541
print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj,const std::string & s,bool commaNeeded=true)8542 static void print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
8543 PRINT_SPACE
8544 _OUT << "{" << std::endl;
8545 INDENT(4);
8546
8547 print_VkStructureType(obj.sType, "sType", 1);
8548
8549 if (obj.pNext) {
8550 dumpPNextChain(obj.pNext);
8551 } else {
8552 PRINT_SPACE
8553 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8554 }
8555
8556 print_VkDeviceSize(obj.allocationSize, "allocationSize", 1);
8557
8558 print_uint32_t(obj.memoryTypeIndex, "memoryTypeIndex", 0);
8559
8560 INDENT(-4);
8561 PRINT_SPACE
8562 if (commaNeeded)
8563 _OUT << "}," << std::endl;
8564 else
8565 _OUT << "}" << std::endl;
8566 }
print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj,const std::string & s,bool commaNeeded=true)8567 static void print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
8568 PRINT_SPACE
8569 _OUT << "{" << std::endl;
8570 INDENT(4);
8571
8572 print_VkStructureType(obj->sType, "sType", 1);
8573
8574 if (obj->pNext) {
8575 dumpPNextChain(obj->pNext);
8576 } else {
8577 PRINT_SPACE
8578 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8579 }
8580
8581 print_VkDeviceSize(obj->allocationSize, "allocationSize", 1);
8582
8583 print_uint32_t(obj->memoryTypeIndex, "memoryTypeIndex", 0);
8584
8585 INDENT(-4);
8586 PRINT_SPACE
8587 if (commaNeeded)
8588 _OUT << "}," << std::endl;
8589 else
8590 _OUT << "}" << std::endl;
8591 }
8592
print_VkMemoryRequirements(VkMemoryRequirements obj,const std::string & s,bool commaNeeded=true)8593 static void print_VkMemoryRequirements(VkMemoryRequirements obj, const std::string& s, bool commaNeeded=true) {
8594 PRINT_SPACE
8595 _OUT << "{" << std::endl;
8596 INDENT(4);
8597
8598 print_VkDeviceSize(obj.size, "size", 1);
8599
8600 print_VkDeviceSize(obj.alignment, "alignment", 1);
8601
8602 print_uint32_t(obj.memoryTypeBits, "memoryTypeBits", 0);
8603
8604 INDENT(-4);
8605 PRINT_SPACE
8606 if (commaNeeded)
8607 _OUT << "}," << std::endl;
8608 else
8609 _OUT << "}" << std::endl;
8610 }
print_VkMemoryRequirements(const VkMemoryRequirements * obj,const std::string & s,bool commaNeeded=true)8611 static void print_VkMemoryRequirements(const VkMemoryRequirements * obj, const std::string& s, bool commaNeeded=true) {
8612 PRINT_SPACE
8613 _OUT << "{" << std::endl;
8614 INDENT(4);
8615
8616 print_VkDeviceSize(obj->size, "size", 1);
8617
8618 print_VkDeviceSize(obj->alignment, "alignment", 1);
8619
8620 print_uint32_t(obj->memoryTypeBits, "memoryTypeBits", 0);
8621
8622 INDENT(-4);
8623 PRINT_SPACE
8624 if (commaNeeded)
8625 _OUT << "}," << std::endl;
8626 else
8627 _OUT << "}" << std::endl;
8628 }
8629
print_VkImageSubresource(VkImageSubresource obj,const std::string & s,bool commaNeeded=true)8630 static void print_VkImageSubresource(VkImageSubresource obj, const std::string& s, bool commaNeeded=true) {
8631 PRINT_SPACE
8632 _OUT << "{" << std::endl;
8633 INDENT(4);
8634
8635 print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 1);
8636
8637 print_uint32_t(obj.mipLevel, "mipLevel", 1);
8638
8639 print_uint32_t(obj.arrayLayer, "arrayLayer", 0);
8640
8641 INDENT(-4);
8642 PRINT_SPACE
8643 if (commaNeeded)
8644 _OUT << "}," << std::endl;
8645 else
8646 _OUT << "}" << std::endl;
8647 }
print_VkImageSubresource(const VkImageSubresource * obj,const std::string & s,bool commaNeeded=true)8648 static void print_VkImageSubresource(const VkImageSubresource * obj, const std::string& s, bool commaNeeded=true) {
8649 PRINT_SPACE
8650 _OUT << "{" << std::endl;
8651 INDENT(4);
8652
8653 print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 1);
8654
8655 print_uint32_t(obj->mipLevel, "mipLevel", 1);
8656
8657 print_uint32_t(obj->arrayLayer, "arrayLayer", 0);
8658
8659 INDENT(-4);
8660 PRINT_SPACE
8661 if (commaNeeded)
8662 _OUT << "}," << std::endl;
8663 else
8664 _OUT << "}" << std::endl;
8665 }
8666
print_VkFenceCreateInfo(VkFenceCreateInfo obj,const std::string & s,bool commaNeeded=true)8667 static void print_VkFenceCreateInfo(VkFenceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8668 PRINT_SPACE
8669 _OUT << "{" << std::endl;
8670 INDENT(4);
8671
8672 print_VkStructureType(obj.sType, "sType", 1);
8673
8674 if (obj.pNext) {
8675 dumpPNextChain(obj.pNext);
8676 } else {
8677 PRINT_SPACE
8678 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8679 }
8680
8681 print_VkFenceCreateFlags(obj.flags, "flags", 0);
8682
8683 INDENT(-4);
8684 PRINT_SPACE
8685 if (commaNeeded)
8686 _OUT << "}," << std::endl;
8687 else
8688 _OUT << "}" << std::endl;
8689 }
print_VkFenceCreateInfo(const VkFenceCreateInfo * obj,const std::string & s,bool commaNeeded=true)8690 static void print_VkFenceCreateInfo(const VkFenceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8691 PRINT_SPACE
8692 _OUT << "{" << std::endl;
8693 INDENT(4);
8694
8695 print_VkStructureType(obj->sType, "sType", 1);
8696
8697 if (obj->pNext) {
8698 dumpPNextChain(obj->pNext);
8699 } else {
8700 PRINT_SPACE
8701 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8702 }
8703
8704 print_VkFenceCreateFlags(obj->flags, "flags", 0);
8705
8706 INDENT(-4);
8707 PRINT_SPACE
8708 if (commaNeeded)
8709 _OUT << "}," << std::endl;
8710 else
8711 _OUT << "}" << std::endl;
8712 }
8713
print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj,const std::string & s,bool commaNeeded=true)8714 static void print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8715 PRINT_SPACE
8716 _OUT << "{" << std::endl;
8717 INDENT(4);
8718
8719 print_VkStructureType(obj.sType, "sType", 1);
8720
8721 if (obj.pNext) {
8722 dumpPNextChain(obj.pNext);
8723 } else {
8724 PRINT_SPACE
8725 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8726 }
8727
8728 print_VkSemaphoreCreateFlags(obj.flags, "flags", 0);
8729
8730 INDENT(-4);
8731 PRINT_SPACE
8732 if (commaNeeded)
8733 _OUT << "}," << std::endl;
8734 else
8735 _OUT << "}" << std::endl;
8736 }
print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj,const std::string & s,bool commaNeeded=true)8737 static void print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8738 PRINT_SPACE
8739 _OUT << "{" << std::endl;
8740 INDENT(4);
8741
8742 print_VkStructureType(obj->sType, "sType", 1);
8743
8744 if (obj->pNext) {
8745 dumpPNextChain(obj->pNext);
8746 } else {
8747 PRINT_SPACE
8748 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8749 }
8750
8751 print_VkSemaphoreCreateFlags(obj->flags, "flags", 0);
8752
8753 INDENT(-4);
8754 PRINT_SPACE
8755 if (commaNeeded)
8756 _OUT << "}," << std::endl;
8757 else
8758 _OUT << "}" << std::endl;
8759 }
8760
print_VkEventCreateInfo(VkEventCreateInfo obj,const std::string & s,bool commaNeeded=true)8761 static void print_VkEventCreateInfo(VkEventCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8762 PRINT_SPACE
8763 _OUT << "{" << std::endl;
8764 INDENT(4);
8765
8766 print_VkStructureType(obj.sType, "sType", 1);
8767
8768 if (obj.pNext) {
8769 dumpPNextChain(obj.pNext);
8770 } else {
8771 PRINT_SPACE
8772 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8773 }
8774
8775 print_VkEventCreateFlags(obj.flags, "flags", 0);
8776
8777 INDENT(-4);
8778 PRINT_SPACE
8779 if (commaNeeded)
8780 _OUT << "}," << std::endl;
8781 else
8782 _OUT << "}" << std::endl;
8783 }
print_VkEventCreateInfo(const VkEventCreateInfo * obj,const std::string & s,bool commaNeeded=true)8784 static void print_VkEventCreateInfo(const VkEventCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8785 PRINT_SPACE
8786 _OUT << "{" << std::endl;
8787 INDENT(4);
8788
8789 print_VkStructureType(obj->sType, "sType", 1);
8790
8791 if (obj->pNext) {
8792 dumpPNextChain(obj->pNext);
8793 } else {
8794 PRINT_SPACE
8795 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8796 }
8797
8798 print_VkEventCreateFlags(obj->flags, "flags", 0);
8799
8800 INDENT(-4);
8801 PRINT_SPACE
8802 if (commaNeeded)
8803 _OUT << "}," << std::endl;
8804 else
8805 _OUT << "}" << std::endl;
8806 }
8807
print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)8808 static void print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8809 PRINT_SPACE
8810 _OUT << "{" << std::endl;
8811 INDENT(4);
8812
8813 print_VkStructureType(obj.sType, "sType", 1);
8814
8815 if (obj.pNext) {
8816 dumpPNextChain(obj.pNext);
8817 } else {
8818 PRINT_SPACE
8819 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8820 }
8821
8822 print_VkQueryPoolCreateFlags(obj.flags, "flags", 1);
8823
8824 print_VkQueryType(obj.queryType, "queryType", 1);
8825
8826 print_uint32_t(obj.queryCount, "queryCount", 1);
8827
8828 print_VkQueryPipelineStatisticFlags(obj.pipelineStatistics, "pipelineStatistics", 0);
8829
8830 INDENT(-4);
8831 PRINT_SPACE
8832 if (commaNeeded)
8833 _OUT << "}," << std::endl;
8834 else
8835 _OUT << "}" << std::endl;
8836 }
print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)8837 static void print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8838 PRINT_SPACE
8839 _OUT << "{" << std::endl;
8840 INDENT(4);
8841
8842 print_VkStructureType(obj->sType, "sType", 1);
8843
8844 if (obj->pNext) {
8845 dumpPNextChain(obj->pNext);
8846 } else {
8847 PRINT_SPACE
8848 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8849 }
8850
8851 print_VkQueryPoolCreateFlags(obj->flags, "flags", 1);
8852
8853 print_VkQueryType(obj->queryType, "queryType", 1);
8854
8855 print_uint32_t(obj->queryCount, "queryCount", 1);
8856
8857 print_VkQueryPipelineStatisticFlags(obj->pipelineStatistics, "pipelineStatistics", 0);
8858
8859 INDENT(-4);
8860 PRINT_SPACE
8861 if (commaNeeded)
8862 _OUT << "}," << std::endl;
8863 else
8864 _OUT << "}" << std::endl;
8865 }
8866
print_VkBufferCreateInfo(VkBufferCreateInfo obj,const std::string & s,bool commaNeeded=true)8867 static void print_VkBufferCreateInfo(VkBufferCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8868 PRINT_SPACE
8869 _OUT << "{" << std::endl;
8870 INDENT(4);
8871
8872 print_VkStructureType(obj.sType, "sType", 1);
8873
8874 if (obj.pNext) {
8875 dumpPNextChain(obj.pNext);
8876 } else {
8877 PRINT_SPACE
8878 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8879 }
8880
8881 print_VkBufferCreateFlags(obj.flags, "flags", 1);
8882
8883 print_VkDeviceSize(obj.size, "size", 1);
8884
8885 print_VkBufferUsageFlags(obj.usage, "usage", 1);
8886
8887 print_VkSharingMode(obj.sharingMode, "sharingMode", 1);
8888
8889 print_uint32_t(obj.queueFamilyIndexCount, "queueFamilyIndexCount", 1);
8890
8891 PRINT_SPACE
8892 _OUT << "\"pQueueFamilyIndices\":" << std::endl;
8893 PRINT_SPACE
8894 if (obj.pQueueFamilyIndices) {
8895 _OUT << "[" << std::endl;
8896 for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
8897 bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
8898 print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
8899 }
8900 PRINT_SPACE
8901 _OUT << "]" << "" << std::endl;
8902 } else {
8903 _OUT << "\"NULL\"" << "" << std::endl;
8904 }
8905
8906 INDENT(-4);
8907 PRINT_SPACE
8908 if (commaNeeded)
8909 _OUT << "}," << std::endl;
8910 else
8911 _OUT << "}" << std::endl;
8912 }
print_VkBufferCreateInfo(const VkBufferCreateInfo * obj,const std::string & s,bool commaNeeded=true)8913 static void print_VkBufferCreateInfo(const VkBufferCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8914 PRINT_SPACE
8915 _OUT << "{" << std::endl;
8916 INDENT(4);
8917
8918 print_VkStructureType(obj->sType, "sType", 1);
8919
8920 if (obj->pNext) {
8921 dumpPNextChain(obj->pNext);
8922 } else {
8923 PRINT_SPACE
8924 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8925 }
8926
8927 print_VkBufferCreateFlags(obj->flags, "flags", 1);
8928
8929 print_VkDeviceSize(obj->size, "size", 1);
8930
8931 print_VkBufferUsageFlags(obj->usage, "usage", 1);
8932
8933 print_VkSharingMode(obj->sharingMode, "sharingMode", 1);
8934
8935 print_uint32_t(obj->queueFamilyIndexCount, "queueFamilyIndexCount", 1);
8936
8937 PRINT_SPACE
8938 _OUT << "\"pQueueFamilyIndices\":" << std::endl;
8939 PRINT_SPACE
8940 if (obj->pQueueFamilyIndices) {
8941 _OUT << "[" << std::endl;
8942 for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
8943 bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
8944 print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
8945 }
8946 PRINT_SPACE
8947 _OUT << "]" << "" << std::endl;
8948 } else {
8949 _OUT << "\"NULL\"" << "" << std::endl;
8950 }
8951
8952 INDENT(-4);
8953 PRINT_SPACE
8954 if (commaNeeded)
8955 _OUT << "}," << std::endl;
8956 else
8957 _OUT << "}" << std::endl;
8958 }
8959
print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj,const std::string & s,bool commaNeeded=true)8960 static void print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8961 PRINT_SPACE
8962 _OUT << "{" << std::endl;
8963 INDENT(4);
8964
8965 print_VkStructureType(obj.sType, "sType", 1);
8966
8967 if (obj.pNext) {
8968 dumpPNextChain(obj.pNext);
8969 } else {
8970 PRINT_SPACE
8971 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8972 }
8973
8974 print_VkBufferViewCreateFlags(obj.flags, "flags", 1);
8975
8976 // CTS : required value
8977 PRINT_SPACE _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
8978
8979 print_VkFormat(obj.format, "format", 1);
8980
8981 print_VkDeviceSize(obj.offset, "offset", 1);
8982
8983 print_VkDeviceSize(obj.range, "range", 0);
8984
8985 INDENT(-4);
8986 PRINT_SPACE
8987 if (commaNeeded)
8988 _OUT << "}," << std::endl;
8989 else
8990 _OUT << "}" << std::endl;
8991 }
print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj,const std::string & s,bool commaNeeded=true)8992 static void print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8993 PRINT_SPACE
8994 _OUT << "{" << std::endl;
8995 INDENT(4);
8996
8997 print_VkStructureType(obj->sType, "sType", 1);
8998
8999 if (obj->pNext) {
9000 dumpPNextChain(obj->pNext);
9001 } else {
9002 PRINT_SPACE
9003 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9004 }
9005
9006 print_VkBufferViewCreateFlags(obj->flags, "flags", 1);
9007
9008 // CTS : required value
9009 PRINT_SPACE _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
9010
9011 print_VkFormat(obj->format, "format", 1);
9012
9013 print_VkDeviceSize(obj->offset, "offset", 1);
9014
9015 print_VkDeviceSize(obj->range, "range", 0);
9016
9017 INDENT(-4);
9018 PRINT_SPACE
9019 if (commaNeeded)
9020 _OUT << "}," << std::endl;
9021 else
9022 _OUT << "}" << std::endl;
9023 }
9024
print_VkImageCreateInfo(VkImageCreateInfo obj,const std::string & s,bool commaNeeded=true)9025 static void print_VkImageCreateInfo(VkImageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9026 PRINT_SPACE
9027 _OUT << "{" << std::endl;
9028 INDENT(4);
9029
9030 print_VkStructureType(obj.sType, "sType", 1);
9031
9032 if (obj.pNext) {
9033 dumpPNextChain(obj.pNext);
9034 } else {
9035 PRINT_SPACE
9036 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9037 }
9038
9039 print_VkImageCreateFlags(obj.flags, "flags", 1);
9040
9041 print_VkImageType(obj.imageType, "imageType", 1);
9042
9043 print_VkFormat(obj.format, "format", 1);
9044
9045 PRINT_SPACE
9046 _OUT << "\"extent\": " << std::endl;
9047 {
9048 print_VkExtent3D(obj.extent, "extent", 1);
9049 }
9050
9051 print_uint32_t(obj.mipLevels, "mipLevels", 1);
9052
9053 print_uint32_t(obj.arrayLayers, "arrayLayers", 1);
9054
9055 print_VkSampleCountFlagBits(obj.samples, "samples", 1);
9056
9057 print_VkImageTiling(obj.tiling, "tiling", 1);
9058
9059 print_VkImageUsageFlags(obj.usage, "usage", 1);
9060
9061 print_VkSharingMode(obj.sharingMode, "sharingMode", 1);
9062
9063 print_uint32_t(obj.queueFamilyIndexCount, "queueFamilyIndexCount", 1);
9064
9065 PRINT_SPACE
9066 _OUT << "\"pQueueFamilyIndices\":" << std::endl;
9067 PRINT_SPACE
9068 if (obj.pQueueFamilyIndices) {
9069 _OUT << "[" << std::endl;
9070 for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
9071 bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
9072 print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
9073 }
9074 PRINT_SPACE
9075 _OUT << "]" << "," << std::endl;
9076 } else {
9077 _OUT << "\"NULL\"" << "," << std::endl;
9078 }
9079
9080 print_VkImageLayout(obj.initialLayout, "initialLayout", 0);
9081
9082 INDENT(-4);
9083 PRINT_SPACE
9084 if (commaNeeded)
9085 _OUT << "}," << std::endl;
9086 else
9087 _OUT << "}" << std::endl;
9088 }
print_VkImageCreateInfo(const VkImageCreateInfo * obj,const std::string & s,bool commaNeeded=true)9089 static void print_VkImageCreateInfo(const VkImageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9090 PRINT_SPACE
9091 _OUT << "{" << std::endl;
9092 INDENT(4);
9093
9094 print_VkStructureType(obj->sType, "sType", 1);
9095
9096 if (obj->pNext) {
9097 dumpPNextChain(obj->pNext);
9098 } else {
9099 PRINT_SPACE
9100 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9101 }
9102
9103 print_VkImageCreateFlags(obj->flags, "flags", 1);
9104
9105 print_VkImageType(obj->imageType, "imageType", 1);
9106
9107 print_VkFormat(obj->format, "format", 1);
9108
9109 PRINT_SPACE
9110 _OUT << "\"extent\": " << std::endl;
9111 {
9112 print_VkExtent3D(obj->extent, "extent", 1);
9113 }
9114
9115 print_uint32_t(obj->mipLevels, "mipLevels", 1);
9116
9117 print_uint32_t(obj->arrayLayers, "arrayLayers", 1);
9118
9119 print_VkSampleCountFlagBits(obj->samples, "samples", 1);
9120
9121 print_VkImageTiling(obj->tiling, "tiling", 1);
9122
9123 print_VkImageUsageFlags(obj->usage, "usage", 1);
9124
9125 print_VkSharingMode(obj->sharingMode, "sharingMode", 1);
9126
9127 print_uint32_t(obj->queueFamilyIndexCount, "queueFamilyIndexCount", 1);
9128
9129 PRINT_SPACE
9130 _OUT << "\"pQueueFamilyIndices\":" << std::endl;
9131 PRINT_SPACE
9132 if (obj->pQueueFamilyIndices) {
9133 _OUT << "[" << std::endl;
9134 for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
9135 bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
9136 print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
9137 }
9138 PRINT_SPACE
9139 _OUT << "]" << "," << std::endl;
9140 } else {
9141 _OUT << "\"NULL\"" << "," << std::endl;
9142 }
9143
9144 print_VkImageLayout(obj->initialLayout, "initialLayout", 0);
9145
9146 INDENT(-4);
9147 PRINT_SPACE
9148 if (commaNeeded)
9149 _OUT << "}," << std::endl;
9150 else
9151 _OUT << "}" << std::endl;
9152 }
9153
print_VkSubresourceLayout(VkSubresourceLayout obj,const std::string & s,bool commaNeeded=true)9154 static void print_VkSubresourceLayout(VkSubresourceLayout obj, const std::string& s, bool commaNeeded=true) {
9155 PRINT_SPACE
9156 _OUT << "{" << std::endl;
9157 INDENT(4);
9158
9159 print_VkDeviceSize(obj.offset, "offset", 1);
9160
9161 print_VkDeviceSize(obj.size, "size", 1);
9162
9163 print_VkDeviceSize(obj.rowPitch, "rowPitch", 1);
9164
9165 print_VkDeviceSize(obj.arrayPitch, "arrayPitch", 1);
9166
9167 print_VkDeviceSize(obj.depthPitch, "depthPitch", 0);
9168
9169 INDENT(-4);
9170 PRINT_SPACE
9171 if (commaNeeded)
9172 _OUT << "}," << std::endl;
9173 else
9174 _OUT << "}" << std::endl;
9175 }
print_VkSubresourceLayout(const VkSubresourceLayout * obj,const std::string & s,bool commaNeeded=true)9176 static void print_VkSubresourceLayout(const VkSubresourceLayout * obj, const std::string& s, bool commaNeeded=true) {
9177 PRINT_SPACE
9178 _OUT << "{" << std::endl;
9179 INDENT(4);
9180
9181 print_VkDeviceSize(obj->offset, "offset", 1);
9182
9183 print_VkDeviceSize(obj->size, "size", 1);
9184
9185 print_VkDeviceSize(obj->rowPitch, "rowPitch", 1);
9186
9187 print_VkDeviceSize(obj->arrayPitch, "arrayPitch", 1);
9188
9189 print_VkDeviceSize(obj->depthPitch, "depthPitch", 0);
9190
9191 INDENT(-4);
9192 PRINT_SPACE
9193 if (commaNeeded)
9194 _OUT << "}," << std::endl;
9195 else
9196 _OUT << "}" << std::endl;
9197 }
9198
print_VkComponentMapping(VkComponentMapping obj,const std::string & s,bool commaNeeded=true)9199 static void print_VkComponentMapping(VkComponentMapping obj, const std::string& s, bool commaNeeded=true) {
9200 PRINT_SPACE
9201 _OUT << "{" << std::endl;
9202 INDENT(4);
9203
9204 print_VkComponentSwizzle(obj.r, "r", 1);
9205
9206 print_VkComponentSwizzle(obj.g, "g", 1);
9207
9208 print_VkComponentSwizzle(obj.b, "b", 1);
9209
9210 print_VkComponentSwizzle(obj.a, "a", 0);
9211
9212 INDENT(-4);
9213 PRINT_SPACE
9214 if (commaNeeded)
9215 _OUT << "}," << std::endl;
9216 else
9217 _OUT << "}" << std::endl;
9218 }
print_VkComponentMapping(const VkComponentMapping * obj,const std::string & s,bool commaNeeded=true)9219 static void print_VkComponentMapping(const VkComponentMapping * obj, const std::string& s, bool commaNeeded=true) {
9220 PRINT_SPACE
9221 _OUT << "{" << std::endl;
9222 INDENT(4);
9223
9224 print_VkComponentSwizzle(obj->r, "r", 1);
9225
9226 print_VkComponentSwizzle(obj->g, "g", 1);
9227
9228 print_VkComponentSwizzle(obj->b, "b", 1);
9229
9230 print_VkComponentSwizzle(obj->a, "a", 0);
9231
9232 INDENT(-4);
9233 PRINT_SPACE
9234 if (commaNeeded)
9235 _OUT << "}," << std::endl;
9236 else
9237 _OUT << "}" << std::endl;
9238 }
9239
print_VkImageViewCreateInfo(VkImageViewCreateInfo obj,const std::string & s,bool commaNeeded=true)9240 static void print_VkImageViewCreateInfo(VkImageViewCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9241 PRINT_SPACE
9242 _OUT << "{" << std::endl;
9243 INDENT(4);
9244
9245 print_VkStructureType(obj.sType, "sType", 1);
9246
9247 if (obj.pNext) {
9248 dumpPNextChain(obj.pNext);
9249 } else {
9250 PRINT_SPACE
9251 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9252 }
9253
9254 print_VkImageViewCreateFlags(obj.flags, "flags", 1);
9255
9256 // CTS : required value
9257 PRINT_SPACE _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
9258
9259 print_VkImageViewType(obj.viewType, "viewType", 1);
9260
9261 print_VkFormat(obj.format, "format", 1);
9262
9263 PRINT_SPACE
9264 _OUT << "\"components\": " << std::endl;
9265 {
9266 print_VkComponentMapping(obj.components, "components", 1);
9267 }
9268
9269 PRINT_SPACE
9270 _OUT << "\"subresourceRange\": " << std::endl;
9271 {
9272 print_VkImageSubresourceRange(obj.subresourceRange, "subresourceRange", 0);
9273 }
9274
9275 INDENT(-4);
9276 PRINT_SPACE
9277 if (commaNeeded)
9278 _OUT << "}," << std::endl;
9279 else
9280 _OUT << "}" << std::endl;
9281 }
print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj,const std::string & s,bool commaNeeded=true)9282 static void print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9283 PRINT_SPACE
9284 _OUT << "{" << std::endl;
9285 INDENT(4);
9286
9287 print_VkStructureType(obj->sType, "sType", 1);
9288
9289 if (obj->pNext) {
9290 dumpPNextChain(obj->pNext);
9291 } else {
9292 PRINT_SPACE
9293 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9294 }
9295
9296 print_VkImageViewCreateFlags(obj->flags, "flags", 1);
9297
9298 // CTS : required value
9299 PRINT_SPACE _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
9300
9301 print_VkImageViewType(obj->viewType, "viewType", 1);
9302
9303 print_VkFormat(obj->format, "format", 1);
9304
9305 PRINT_SPACE
9306 _OUT << "\"components\": " << std::endl;
9307 {
9308 print_VkComponentMapping(obj->components, "components", 1);
9309 }
9310
9311 PRINT_SPACE
9312 _OUT << "\"subresourceRange\": " << std::endl;
9313 {
9314 print_VkImageSubresourceRange(obj->subresourceRange, "subresourceRange", 0);
9315 }
9316
9317 INDENT(-4);
9318 PRINT_SPACE
9319 if (commaNeeded)
9320 _OUT << "}," << std::endl;
9321 else
9322 _OUT << "}" << std::endl;
9323 }
9324
print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj,const std::string & s,bool commaNeeded=true)9325 static void print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9326 PRINT_SPACE
9327 _OUT << "{" << std::endl;
9328 INDENT(4);
9329
9330 print_VkStructureType(obj.sType, "sType", 1);
9331
9332 if (obj.pNext) {
9333 dumpPNextChain(obj.pNext);
9334 } else {
9335 PRINT_SPACE
9336 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9337 }
9338
9339 print_VkPipelineCacheCreateFlags(obj.flags, "flags", 1);
9340
9341 print_size_t(obj.initialDataSize, "initialDataSize", 1);
9342
9343 print_void_data(obj.pInitialData, int(obj.initialDataSize), "pInitialData", 0);
9344
9345 INDENT(-4);
9346 PRINT_SPACE
9347 if (commaNeeded)
9348 _OUT << "}," << std::endl;
9349 else
9350 _OUT << "}" << std::endl;
9351 }
print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * obj,const std::string & s,bool commaNeeded=true)9352 static void print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9353 PRINT_SPACE
9354 _OUT << "{" << std::endl;
9355 INDENT(4);
9356
9357 print_VkStructureType(obj->sType, "sType", 1);
9358
9359 if (obj->pNext) {
9360 dumpPNextChain(obj->pNext);
9361 } else {
9362 PRINT_SPACE
9363 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9364 }
9365
9366 print_VkPipelineCacheCreateFlags(obj->flags, "flags", 1);
9367
9368 print_size_t(obj->initialDataSize, "initialDataSize", 1);
9369
9370 print_void_data(obj->pInitialData, int(obj->initialDataSize), "pInitialData", 0);
9371
9372 INDENT(-4);
9373 PRINT_SPACE
9374 if (commaNeeded)
9375 _OUT << "}," << std::endl;
9376 else
9377 _OUT << "}" << std::endl;
9378 }
9379
print_VkSpecializationMapEntry(VkSpecializationMapEntry obj,const std::string & s,bool commaNeeded=true)9380 static void print_VkSpecializationMapEntry(VkSpecializationMapEntry obj, const std::string& s, bool commaNeeded=true) {
9381 PRINT_SPACE
9382 _OUT << "{" << std::endl;
9383 INDENT(4);
9384
9385 print_uint32_t(obj.constantID, "constantID", 1);
9386
9387 print_uint32_t(obj.offset, "offset", 1);
9388
9389 print_size_t(obj.size, "size", 0);
9390
9391 INDENT(-4);
9392 PRINT_SPACE
9393 if (commaNeeded)
9394 _OUT << "}," << std::endl;
9395 else
9396 _OUT << "}" << std::endl;
9397 }
print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj,const std::string & s,bool commaNeeded=true)9398 static void print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj, const std::string& s, bool commaNeeded=true) {
9399 PRINT_SPACE
9400 _OUT << "{" << std::endl;
9401 INDENT(4);
9402
9403 print_uint32_t(obj->constantID, "constantID", 1);
9404
9405 print_uint32_t(obj->offset, "offset", 1);
9406
9407 print_size_t(obj->size, "size", 0);
9408
9409 INDENT(-4);
9410 PRINT_SPACE
9411 if (commaNeeded)
9412 _OUT << "}," << std::endl;
9413 else
9414 _OUT << "}" << std::endl;
9415 }
9416
print_VkSpecializationInfo(VkSpecializationInfo obj,const std::string & s,bool commaNeeded=true)9417 static void print_VkSpecializationInfo(VkSpecializationInfo obj, const std::string& s, bool commaNeeded=true) {
9418 PRINT_SPACE
9419 _OUT << "{" << std::endl;
9420 INDENT(4);
9421
9422 print_uint32_t(obj.mapEntryCount, "mapEntryCount", 1);
9423
9424 PRINT_SPACE
9425 _OUT << "\"pMapEntries\": " << std::endl;
9426 if (obj.pMapEntries) {
9427 PRINT_SPACE
9428 _OUT << "[" << std::endl;
9429 for (unsigned int i = 0; i < obj.mapEntryCount; i++) {
9430 if (i+1 == obj.mapEntryCount)
9431 print_VkSpecializationMapEntry(obj.pMapEntries[i], "pMapEntries", 0);
9432 else
9433 print_VkSpecializationMapEntry(obj.pMapEntries[i], "pMapEntries", 1);
9434 }
9435 PRINT_SPACE
9436 _OUT << "]," << std::endl;
9437 }
9438 else
9439 {
9440 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9441 }
9442
9443 print_size_t(obj.dataSize, "dataSize", 1);
9444
9445 print_void_data(obj.pData, int(obj.dataSize), "pData", 0);
9446
9447 INDENT(-4);
9448 PRINT_SPACE
9449 if (commaNeeded)
9450 _OUT << "}," << std::endl;
9451 else
9452 _OUT << "}" << std::endl;
9453 }
print_VkSpecializationInfo(const VkSpecializationInfo * obj,const std::string & s,bool commaNeeded=true)9454 static void print_VkSpecializationInfo(const VkSpecializationInfo * obj, const std::string& s, bool commaNeeded=true) {
9455 PRINT_SPACE
9456 _OUT << "{" << std::endl;
9457 INDENT(4);
9458
9459 print_uint32_t(obj->mapEntryCount, "mapEntryCount", 1);
9460
9461 PRINT_SPACE
9462 _OUT << "\"pMapEntries\": " << std::endl;
9463 if (obj->pMapEntries) {
9464 PRINT_SPACE
9465 _OUT << "[" << std::endl;
9466 for (unsigned int i = 0; i < obj->mapEntryCount; i++) {
9467 if (i+1 == obj->mapEntryCount)
9468 print_VkSpecializationMapEntry(obj->pMapEntries[i], "pMapEntries", 0);
9469 else
9470 print_VkSpecializationMapEntry(obj->pMapEntries[i], "pMapEntries", 1);
9471 }
9472 PRINT_SPACE
9473 _OUT << "]," << std::endl;
9474 }
9475 else
9476 {
9477 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9478 }
9479
9480 print_size_t(obj->dataSize, "dataSize", 1);
9481
9482 print_void_data(obj->pData, int(obj->dataSize), "pData", 0);
9483
9484 INDENT(-4);
9485 PRINT_SPACE
9486 if (commaNeeded)
9487 _OUT << "}," << std::endl;
9488 else
9489 _OUT << "}" << std::endl;
9490 }
9491
print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj,const std::string & s,bool commaNeeded=true)9492 static void print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9493 PRINT_SPACE
9494 _OUT << "{" << std::endl;
9495 INDENT(4);
9496
9497 print_VkStructureType(obj.sType, "sType", 1);
9498
9499 if (obj.pNext) {
9500 dumpPNextChain(obj.pNext);
9501 } else {
9502 PRINT_SPACE
9503 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9504 }
9505
9506 print_VkPipelineShaderStageCreateFlags(obj.flags, "flags", 1);
9507
9508 print_VkShaderStageFlagBits(obj.stage, "stage", 1);
9509
9510 // CTS : required value
9511 PRINT_SPACE _OUT << "\"" << "module" << "\"" << " : " << obj.module.getInternal() << "," << std::endl;
9512
9513 print_char(obj.pName, "pName", 1);
9514
9515 PRINT_SPACE
9516 _OUT << "\"pSpecializationInfo\": " << std::endl;
9517 if (obj.pSpecializationInfo) {
9518 print_VkSpecializationInfo(obj.pSpecializationInfo, "pSpecializationInfo", 0);
9519 }
9520 else
9521 {
9522 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9523 }
9524
9525 INDENT(-4);
9526 PRINT_SPACE
9527 if (commaNeeded)
9528 _OUT << "}," << std::endl;
9529 else
9530 _OUT << "}" << std::endl;
9531 }
print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * obj,const std::string & s,bool commaNeeded=true)9532 static void print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9533 PRINT_SPACE
9534 _OUT << "{" << std::endl;
9535 INDENT(4);
9536
9537 print_VkStructureType(obj->sType, "sType", 1);
9538
9539 if (obj->pNext) {
9540 dumpPNextChain(obj->pNext);
9541 } else {
9542 PRINT_SPACE
9543 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9544 }
9545
9546 print_VkPipelineShaderStageCreateFlags(obj->flags, "flags", 1);
9547
9548 print_VkShaderStageFlagBits(obj->stage, "stage", 1);
9549
9550 // CTS : required value
9551 PRINT_SPACE _OUT << "\"" << "module" << "\"" << " : " << obj->module.getInternal() << "," << std::endl;
9552
9553 print_char(obj->pName, "pName", 1);
9554
9555 PRINT_SPACE
9556 _OUT << "\"pSpecializationInfo\": " << std::endl;
9557 if (obj->pSpecializationInfo) {
9558 print_VkSpecializationInfo(obj->pSpecializationInfo, "pSpecializationInfo", 0);
9559 }
9560 else
9561 {
9562 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9563 }
9564
9565 INDENT(-4);
9566 PRINT_SPACE
9567 if (commaNeeded)
9568 _OUT << "}," << std::endl;
9569 else
9570 _OUT << "}" << std::endl;
9571 }
9572
print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj,const std::string & s,bool commaNeeded=true)9573 static void print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9574 PRINT_SPACE
9575 _OUT << "{" << std::endl;
9576 INDENT(4);
9577
9578 print_VkStructureType(obj.sType, "sType", 1);
9579
9580 if (obj.pNext) {
9581 dumpPNextChain(obj.pNext);
9582 } else {
9583 PRINT_SPACE
9584 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9585 }
9586
9587 print_VkPipelineCreateFlags(obj.flags, "flags", 1);
9588
9589 PRINT_SPACE
9590 _OUT << "\"stage\": " << std::endl;
9591 {
9592 print_VkPipelineShaderStageCreateInfo(obj.stage, "stage", 1);
9593 }
9594
9595 // CTS : required value
9596 PRINT_SPACE _OUT << "\"" << "layout" << "\"" << " : " << obj.layout.getInternal() << "," << std::endl;
9597
9598 // CTS : required value
9599 PRINT_SPACE _OUT << "\"" << "basePipelineHandle" << "\"" << " : " << "\"" << "\"," << std::endl;
9600
9601 print_int32_t(obj.basePipelineIndex, "basePipelineIndex", 0);
9602
9603 INDENT(-4);
9604 PRINT_SPACE
9605 if (commaNeeded)
9606 _OUT << "}," << std::endl;
9607 else
9608 _OUT << "}" << std::endl;
9609 }
print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * obj,const std::string & s,bool commaNeeded=true)9610 static void print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9611 PRINT_SPACE
9612 _OUT << "{" << std::endl;
9613 INDENT(4);
9614
9615 print_VkStructureType(obj->sType, "sType", 1);
9616
9617 if (obj->pNext) {
9618 dumpPNextChain(obj->pNext);
9619 } else {
9620 PRINT_SPACE
9621 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9622 }
9623
9624 print_VkPipelineCreateFlags(obj->flags, "flags", 1);
9625
9626 PRINT_SPACE
9627 _OUT << "\"stage\": " << std::endl;
9628 {
9629 print_VkPipelineShaderStageCreateInfo(obj->stage, "stage", 1);
9630 }
9631
9632 // CTS : required value
9633 PRINT_SPACE _OUT << "\"" << "layout" << "\"" << " : " << obj->layout.getInternal() << "," << std::endl;
9634
9635 // CTS : required value
9636 PRINT_SPACE _OUT << "\"" << "basePipelineHandle" << "\"" << " : " << "\"" << "\"," << std::endl;
9637
9638 print_int32_t(obj->basePipelineIndex, "basePipelineIndex", 0);
9639
9640 INDENT(-4);
9641 PRINT_SPACE
9642 if (commaNeeded)
9643 _OUT << "}," << std::endl;
9644 else
9645 _OUT << "}" << std::endl;
9646 }
9647
print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj,const std::string & s,bool commaNeeded=true)9648 static void print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj, const std::string& s, bool commaNeeded=true) {
9649 PRINT_SPACE
9650 _OUT << "{" << std::endl;
9651 INDENT(4);
9652
9653 print_uint32_t(obj.binding, "binding", 1);
9654
9655 print_uint32_t(obj.stride, "stride", 1);
9656
9657 print_VkVertexInputRate(obj.inputRate, "inputRate", 0);
9658
9659 INDENT(-4);
9660 PRINT_SPACE
9661 if (commaNeeded)
9662 _OUT << "}," << std::endl;
9663 else
9664 _OUT << "}" << std::endl;
9665 }
print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * obj,const std::string & s,bool commaNeeded=true)9666 static void print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * obj, const std::string& s, bool commaNeeded=true) {
9667 PRINT_SPACE
9668 _OUT << "{" << std::endl;
9669 INDENT(4);
9670
9671 print_uint32_t(obj->binding, "binding", 1);
9672
9673 print_uint32_t(obj->stride, "stride", 1);
9674
9675 print_VkVertexInputRate(obj->inputRate, "inputRate", 0);
9676
9677 INDENT(-4);
9678 PRINT_SPACE
9679 if (commaNeeded)
9680 _OUT << "}," << std::endl;
9681 else
9682 _OUT << "}" << std::endl;
9683 }
9684
print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj,const std::string & s,bool commaNeeded=true)9685 static void print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj, const std::string& s, bool commaNeeded=true) {
9686 PRINT_SPACE
9687 _OUT << "{" << std::endl;
9688 INDENT(4);
9689
9690 print_uint32_t(obj.location, "location", 1);
9691
9692 print_uint32_t(obj.binding, "binding", 1);
9693
9694 print_VkFormat(obj.format, "format", 1);
9695
9696 print_uint32_t(obj.offset, "offset", 0);
9697
9698 INDENT(-4);
9699 PRINT_SPACE
9700 if (commaNeeded)
9701 _OUT << "}," << std::endl;
9702 else
9703 _OUT << "}" << std::endl;
9704 }
print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * obj,const std::string & s,bool commaNeeded=true)9705 static void print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * obj, const std::string& s, bool commaNeeded=true) {
9706 PRINT_SPACE
9707 _OUT << "{" << std::endl;
9708 INDENT(4);
9709
9710 print_uint32_t(obj->location, "location", 1);
9711
9712 print_uint32_t(obj->binding, "binding", 1);
9713
9714 print_VkFormat(obj->format, "format", 1);
9715
9716 print_uint32_t(obj->offset, "offset", 0);
9717
9718 INDENT(-4);
9719 PRINT_SPACE
9720 if (commaNeeded)
9721 _OUT << "}," << std::endl;
9722 else
9723 _OUT << "}" << std::endl;
9724 }
9725
print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj,const std::string & s,bool commaNeeded=true)9726 static void print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9727 PRINT_SPACE
9728 _OUT << "{" << std::endl;
9729 INDENT(4);
9730
9731 print_VkStructureType(obj.sType, "sType", 1);
9732
9733 if (obj.pNext) {
9734 dumpPNextChain(obj.pNext);
9735 } else {
9736 PRINT_SPACE
9737 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9738 }
9739
9740 print_VkPipelineVertexInputStateCreateFlags(obj.flags, "flags", 1);
9741
9742 print_uint32_t(obj.vertexBindingDescriptionCount, "vertexBindingDescriptionCount", 1);
9743
9744 PRINT_SPACE
9745 _OUT << "\"pVertexBindingDescriptions\": " << std::endl;
9746 if (obj.pVertexBindingDescriptions) {
9747 PRINT_SPACE
9748 _OUT << "[" << std::endl;
9749 for (unsigned int i = 0; i < obj.vertexBindingDescriptionCount; i++) {
9750 if (i+1 == obj.vertexBindingDescriptionCount)
9751 print_VkVertexInputBindingDescription(obj.pVertexBindingDescriptions[i], "pVertexBindingDescriptions", 0);
9752 else
9753 print_VkVertexInputBindingDescription(obj.pVertexBindingDescriptions[i], "pVertexBindingDescriptions", 1);
9754 }
9755 PRINT_SPACE
9756 _OUT << "]," << std::endl;
9757 }
9758 else
9759 {
9760 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9761 }
9762
9763 print_uint32_t(obj.vertexAttributeDescriptionCount, "vertexAttributeDescriptionCount", 1);
9764
9765 PRINT_SPACE
9766 _OUT << "\"pVertexAttributeDescriptions\": " << std::endl;
9767 if (obj.pVertexAttributeDescriptions) {
9768 PRINT_SPACE
9769 _OUT << "[" << std::endl;
9770 for (unsigned int i = 0; i < obj.vertexAttributeDescriptionCount; i++) {
9771 if (i+1 == obj.vertexAttributeDescriptionCount)
9772 print_VkVertexInputAttributeDescription(obj.pVertexAttributeDescriptions[i], "pVertexAttributeDescriptions", 0);
9773 else
9774 print_VkVertexInputAttributeDescription(obj.pVertexAttributeDescriptions[i], "pVertexAttributeDescriptions", 1);
9775 }
9776 PRINT_SPACE
9777 _OUT << "]" << std::endl;
9778 }
9779 else
9780 {
9781 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9782 }
9783
9784 INDENT(-4);
9785 PRINT_SPACE
9786 if (commaNeeded)
9787 _OUT << "}," << std::endl;
9788 else
9789 _OUT << "}" << std::endl;
9790 }
print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)9791 static void print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9792 PRINT_SPACE
9793 _OUT << "{" << std::endl;
9794 INDENT(4);
9795
9796 print_VkStructureType(obj->sType, "sType", 1);
9797
9798 if (obj->pNext) {
9799 dumpPNextChain(obj->pNext);
9800 } else {
9801 PRINT_SPACE
9802 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9803 }
9804
9805 print_VkPipelineVertexInputStateCreateFlags(obj->flags, "flags", 1);
9806
9807 print_uint32_t(obj->vertexBindingDescriptionCount, "vertexBindingDescriptionCount", 1);
9808
9809 PRINT_SPACE
9810 _OUT << "\"pVertexBindingDescriptions\": " << std::endl;
9811 if (obj->pVertexBindingDescriptions) {
9812 PRINT_SPACE
9813 _OUT << "[" << std::endl;
9814 for (unsigned int i = 0; i < obj->vertexBindingDescriptionCount; i++) {
9815 if (i+1 == obj->vertexBindingDescriptionCount)
9816 print_VkVertexInputBindingDescription(obj->pVertexBindingDescriptions[i], "pVertexBindingDescriptions", 0);
9817 else
9818 print_VkVertexInputBindingDescription(obj->pVertexBindingDescriptions[i], "pVertexBindingDescriptions", 1);
9819 }
9820 PRINT_SPACE
9821 _OUT << "]," << std::endl;
9822 }
9823 else
9824 {
9825 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9826 }
9827
9828 print_uint32_t(obj->vertexAttributeDescriptionCount, "vertexAttributeDescriptionCount", 1);
9829
9830 PRINT_SPACE
9831 _OUT << "\"pVertexAttributeDescriptions\": " << std::endl;
9832 if (obj->pVertexAttributeDescriptions) {
9833 PRINT_SPACE
9834 _OUT << "[" << std::endl;
9835 for (unsigned int i = 0; i < obj->vertexAttributeDescriptionCount; i++) {
9836 if (i+1 == obj->vertexAttributeDescriptionCount)
9837 print_VkVertexInputAttributeDescription(obj->pVertexAttributeDescriptions[i], "pVertexAttributeDescriptions", 0);
9838 else
9839 print_VkVertexInputAttributeDescription(obj->pVertexAttributeDescriptions[i], "pVertexAttributeDescriptions", 1);
9840 }
9841 PRINT_SPACE
9842 _OUT << "]" << std::endl;
9843 }
9844 else
9845 {
9846 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9847 }
9848
9849 INDENT(-4);
9850 PRINT_SPACE
9851 if (commaNeeded)
9852 _OUT << "}," << std::endl;
9853 else
9854 _OUT << "}" << std::endl;
9855 }
9856
print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj,const std::string & s,bool commaNeeded=true)9857 static void print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9858 PRINT_SPACE
9859 _OUT << "{" << std::endl;
9860 INDENT(4);
9861
9862 print_VkStructureType(obj.sType, "sType", 1);
9863
9864 if (obj.pNext) {
9865 dumpPNextChain(obj.pNext);
9866 } else {
9867 PRINT_SPACE
9868 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9869 }
9870
9871 print_VkPipelineInputAssemblyStateCreateFlags(obj.flags, "flags", 1);
9872
9873 print_VkPrimitiveTopology(obj.topology, "topology", 1);
9874
9875 print_VkBool32(obj.primitiveRestartEnable, "primitiveRestartEnable", 0);
9876
9877 INDENT(-4);
9878 PRINT_SPACE
9879 if (commaNeeded)
9880 _OUT << "}," << std::endl;
9881 else
9882 _OUT << "}" << std::endl;
9883 }
print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)9884 static void print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9885 PRINT_SPACE
9886 _OUT << "{" << std::endl;
9887 INDENT(4);
9888
9889 print_VkStructureType(obj->sType, "sType", 1);
9890
9891 if (obj->pNext) {
9892 dumpPNextChain(obj->pNext);
9893 } else {
9894 PRINT_SPACE
9895 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9896 }
9897
9898 print_VkPipelineInputAssemblyStateCreateFlags(obj->flags, "flags", 1);
9899
9900 print_VkPrimitiveTopology(obj->topology, "topology", 1);
9901
9902 print_VkBool32(obj->primitiveRestartEnable, "primitiveRestartEnable", 0);
9903
9904 INDENT(-4);
9905 PRINT_SPACE
9906 if (commaNeeded)
9907 _OUT << "}," << std::endl;
9908 else
9909 _OUT << "}" << std::endl;
9910 }
9911
print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj,const std::string & s,bool commaNeeded=true)9912 static void print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9913 PRINT_SPACE
9914 _OUT << "{" << std::endl;
9915 INDENT(4);
9916
9917 print_VkStructureType(obj.sType, "sType", 1);
9918
9919 if (obj.pNext) {
9920 dumpPNextChain(obj.pNext);
9921 } else {
9922 PRINT_SPACE
9923 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9924 }
9925
9926 print_VkPipelineTessellationStateCreateFlags(obj.flags, "flags", 1);
9927
9928 print_uint32_t(obj.patchControlPoints, "patchControlPoints", 0);
9929
9930 INDENT(-4);
9931 PRINT_SPACE
9932 if (commaNeeded)
9933 _OUT << "}," << std::endl;
9934 else
9935 _OUT << "}" << std::endl;
9936 }
print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)9937 static void print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9938 PRINT_SPACE
9939 _OUT << "{" << std::endl;
9940 INDENT(4);
9941
9942 print_VkStructureType(obj->sType, "sType", 1);
9943
9944 if (obj->pNext) {
9945 dumpPNextChain(obj->pNext);
9946 } else {
9947 PRINT_SPACE
9948 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9949 }
9950
9951 print_VkPipelineTessellationStateCreateFlags(obj->flags, "flags", 1);
9952
9953 print_uint32_t(obj->patchControlPoints, "patchControlPoints", 0);
9954
9955 INDENT(-4);
9956 PRINT_SPACE
9957 if (commaNeeded)
9958 _OUT << "}," << std::endl;
9959 else
9960 _OUT << "}" << std::endl;
9961 }
9962
print_VkViewport(VkViewport obj,const std::string & s,bool commaNeeded=true)9963 static void print_VkViewport(VkViewport obj, const std::string& s, bool commaNeeded=true) {
9964 PRINT_SPACE
9965 _OUT << "{" << std::endl;
9966 INDENT(4);
9967
9968 print_float(obj.x, "x", 1);
9969
9970 print_float(obj.y, "y", 1);
9971
9972 print_float(obj.width, "width", 1);
9973
9974 print_float(obj.height, "height", 1);
9975
9976 print_float(obj.minDepth, "minDepth", 1);
9977
9978 print_float(obj.maxDepth, "maxDepth", 0);
9979
9980 INDENT(-4);
9981 PRINT_SPACE
9982 if (commaNeeded)
9983 _OUT << "}," << std::endl;
9984 else
9985 _OUT << "}" << std::endl;
9986 }
print_VkViewport(const VkViewport * obj,const std::string & s,bool commaNeeded=true)9987 static void print_VkViewport(const VkViewport * obj, const std::string& s, bool commaNeeded=true) {
9988 PRINT_SPACE
9989 _OUT << "{" << std::endl;
9990 INDENT(4);
9991
9992 print_float(obj->x, "x", 1);
9993
9994 print_float(obj->y, "y", 1);
9995
9996 print_float(obj->width, "width", 1);
9997
9998 print_float(obj->height, "height", 1);
9999
10000 print_float(obj->minDepth, "minDepth", 1);
10001
10002 print_float(obj->maxDepth, "maxDepth", 0);
10003
10004 INDENT(-4);
10005 PRINT_SPACE
10006 if (commaNeeded)
10007 _OUT << "}," << std::endl;
10008 else
10009 _OUT << "}" << std::endl;
10010 }
10011
print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10012 static void print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10013 PRINT_SPACE
10014 _OUT << "{" << std::endl;
10015 INDENT(4);
10016
10017 print_VkStructureType(obj.sType, "sType", 1);
10018
10019 if (obj.pNext) {
10020 dumpPNextChain(obj.pNext);
10021 } else {
10022 PRINT_SPACE
10023 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10024 }
10025
10026 print_VkPipelineViewportStateCreateFlags(obj.flags, "flags", 1);
10027
10028 print_uint32_t(obj.viewportCount, "viewportCount", 1);
10029
10030 PRINT_SPACE
10031 _OUT << "\"pViewports\": " << std::endl;
10032 if (obj.pViewports) {
10033 PRINT_SPACE
10034 _OUT << "[" << std::endl;
10035 for (unsigned int i = 0; i < obj.viewportCount; i++) {
10036 if (i+1 == obj.viewportCount)
10037 print_VkViewport(obj.pViewports[i], "pViewports", 0);
10038 else
10039 print_VkViewport(obj.pViewports[i], "pViewports", 1);
10040 }
10041 PRINT_SPACE
10042 _OUT << "]," << std::endl;
10043 }
10044 else
10045 {
10046 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10047 }
10048
10049 print_uint32_t(obj.scissorCount, "scissorCount", 1);
10050
10051 PRINT_SPACE
10052 _OUT << "\"pScissors\": " << std::endl;
10053 if (obj.pScissors) {
10054 PRINT_SPACE
10055 _OUT << "[" << std::endl;
10056 for (unsigned int i = 0; i < obj.scissorCount; i++) {
10057 if (i+1 == obj.scissorCount)
10058 print_VkRect2D(obj.pScissors[i], "pScissors", 0);
10059 else
10060 print_VkRect2D(obj.pScissors[i], "pScissors", 1);
10061 }
10062 PRINT_SPACE
10063 _OUT << "]" << std::endl;
10064 }
10065 else
10066 {
10067 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
10068 }
10069
10070 INDENT(-4);
10071 PRINT_SPACE
10072 if (commaNeeded)
10073 _OUT << "}," << std::endl;
10074 else
10075 _OUT << "}" << std::endl;
10076 }
print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10077 static void print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10078 PRINT_SPACE
10079 _OUT << "{" << std::endl;
10080 INDENT(4);
10081
10082 print_VkStructureType(obj->sType, "sType", 1);
10083
10084 if (obj->pNext) {
10085 dumpPNextChain(obj->pNext);
10086 } else {
10087 PRINT_SPACE
10088 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10089 }
10090
10091 print_VkPipelineViewportStateCreateFlags(obj->flags, "flags", 1);
10092
10093 print_uint32_t(obj->viewportCount, "viewportCount", 1);
10094
10095 PRINT_SPACE
10096 _OUT << "\"pViewports\": " << std::endl;
10097 if (obj->pViewports) {
10098 PRINT_SPACE
10099 _OUT << "[" << std::endl;
10100 for (unsigned int i = 0; i < obj->viewportCount; i++) {
10101 if (i+1 == obj->viewportCount)
10102 print_VkViewport(obj->pViewports[i], "pViewports", 0);
10103 else
10104 print_VkViewport(obj->pViewports[i], "pViewports", 1);
10105 }
10106 PRINT_SPACE
10107 _OUT << "]," << std::endl;
10108 }
10109 else
10110 {
10111 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10112 }
10113
10114 print_uint32_t(obj->scissorCount, "scissorCount", 1);
10115
10116 PRINT_SPACE
10117 _OUT << "\"pScissors\": " << std::endl;
10118 if (obj->pScissors) {
10119 PRINT_SPACE
10120 _OUT << "[" << std::endl;
10121 for (unsigned int i = 0; i < obj->scissorCount; i++) {
10122 if (i+1 == obj->scissorCount)
10123 print_VkRect2D(obj->pScissors[i], "pScissors", 0);
10124 else
10125 print_VkRect2D(obj->pScissors[i], "pScissors", 1);
10126 }
10127 PRINT_SPACE
10128 _OUT << "]" << std::endl;
10129 }
10130 else
10131 {
10132 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
10133 }
10134
10135 INDENT(-4);
10136 PRINT_SPACE
10137 if (commaNeeded)
10138 _OUT << "}," << std::endl;
10139 else
10140 _OUT << "}" << std::endl;
10141 }
10142
print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10143 static void print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10144 PRINT_SPACE
10145 _OUT << "{" << std::endl;
10146 INDENT(4);
10147
10148 print_VkStructureType(obj.sType, "sType", 1);
10149
10150 if (obj.pNext) {
10151 dumpPNextChain(obj.pNext);
10152 } else {
10153 PRINT_SPACE
10154 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10155 }
10156
10157 print_VkPipelineRasterizationStateCreateFlags(obj.flags, "flags", 1);
10158
10159 print_VkBool32(obj.depthClampEnable, "depthClampEnable", 1);
10160
10161 print_VkBool32(obj.rasterizerDiscardEnable, "rasterizerDiscardEnable", 1);
10162
10163 print_VkPolygonMode(obj.polygonMode, "polygonMode", 1);
10164
10165 print_VkCullModeFlags(obj.cullMode, "cullMode", 1);
10166
10167 print_VkFrontFace(obj.frontFace, "frontFace", 1);
10168
10169 print_VkBool32(obj.depthBiasEnable, "depthBiasEnable", 1);
10170
10171 print_float(obj.depthBiasConstantFactor, "depthBiasConstantFactor", 1);
10172
10173 print_float(obj.depthBiasClamp, "depthBiasClamp", 1);
10174
10175 print_float(obj.depthBiasSlopeFactor, "depthBiasSlopeFactor", 1);
10176
10177 print_float(obj.lineWidth, "lineWidth", 0);
10178
10179 INDENT(-4);
10180 PRINT_SPACE
10181 if (commaNeeded)
10182 _OUT << "}," << std::endl;
10183 else
10184 _OUT << "}" << std::endl;
10185 }
print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10186 static void print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10187 PRINT_SPACE
10188 _OUT << "{" << std::endl;
10189 INDENT(4);
10190
10191 print_VkStructureType(obj->sType, "sType", 1);
10192
10193 if (obj->pNext) {
10194 dumpPNextChain(obj->pNext);
10195 } else {
10196 PRINT_SPACE
10197 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10198 }
10199
10200 print_VkPipelineRasterizationStateCreateFlags(obj->flags, "flags", 1);
10201
10202 print_VkBool32(obj->depthClampEnable, "depthClampEnable", 1);
10203
10204 print_VkBool32(obj->rasterizerDiscardEnable, "rasterizerDiscardEnable", 1);
10205
10206 print_VkPolygonMode(obj->polygonMode, "polygonMode", 1);
10207
10208 print_VkCullModeFlags(obj->cullMode, "cullMode", 1);
10209
10210 print_VkFrontFace(obj->frontFace, "frontFace", 1);
10211
10212 print_VkBool32(obj->depthBiasEnable, "depthBiasEnable", 1);
10213
10214 print_float(obj->depthBiasConstantFactor, "depthBiasConstantFactor", 1);
10215
10216 print_float(obj->depthBiasClamp, "depthBiasClamp", 1);
10217
10218 print_float(obj->depthBiasSlopeFactor, "depthBiasSlopeFactor", 1);
10219
10220 print_float(obj->lineWidth, "lineWidth", 0);
10221
10222 INDENT(-4);
10223 PRINT_SPACE
10224 if (commaNeeded)
10225 _OUT << "}," << std::endl;
10226 else
10227 _OUT << "}" << std::endl;
10228 }
10229
print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10230 static void print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10231 PRINT_SPACE
10232 _OUT << "{" << std::endl;
10233 INDENT(4);
10234
10235 print_VkStructureType(obj.sType, "sType", 1);
10236
10237 if (obj.pNext) {
10238 dumpPNextChain(obj.pNext);
10239 } else {
10240 PRINT_SPACE
10241 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10242 }
10243
10244 print_VkPipelineMultisampleStateCreateFlags(obj.flags, "flags", 1);
10245
10246 print_VkSampleCountFlagBits(obj.rasterizationSamples, "rasterizationSamples", 1);
10247
10248 print_VkBool32(obj.sampleShadingEnable, "sampleShadingEnable", 1);
10249
10250 print_float(obj.minSampleShading, "minSampleShading", 1);
10251
10252 deUint32 sampleMaskSize = ((obj.rasterizationSamples + 31) / 32);
10253 PRINT_SPACE
10254 _OUT << "\"pSampleMask\":" << std::endl;
10255 PRINT_SPACE
10256 if (obj.pSampleMask) {
10257 _OUT << "[" << std::endl;
10258 for (unsigned int i = 0; i < sampleMaskSize; i++) {
10259 bool isCommaNeeded = (i+1) != sampleMaskSize;
10260 print_uint32_t(obj.pSampleMask[i], "", isCommaNeeded);
10261 }
10262 PRINT_SPACE
10263 _OUT << "]" << "," << std::endl;
10264 } else {
10265 _OUT << "\"NULL\"" << "," << std::endl;
10266 }
10267
10268 print_VkBool32(obj.alphaToCoverageEnable, "alphaToCoverageEnable", 1);
10269
10270 print_VkBool32(obj.alphaToOneEnable, "alphaToOneEnable", 0);
10271
10272 INDENT(-4);
10273 PRINT_SPACE
10274 if (commaNeeded)
10275 _OUT << "}," << std::endl;
10276 else
10277 _OUT << "}" << std::endl;
10278 }
print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10279 static void print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10280 PRINT_SPACE
10281 _OUT << "{" << std::endl;
10282 INDENT(4);
10283
10284 print_VkStructureType(obj->sType, "sType", 1);
10285
10286 if (obj->pNext) {
10287 dumpPNextChain(obj->pNext);
10288 } else {
10289 PRINT_SPACE
10290 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10291 }
10292
10293 print_VkPipelineMultisampleStateCreateFlags(obj->flags, "flags", 1);
10294
10295 print_VkSampleCountFlagBits(obj->rasterizationSamples, "rasterizationSamples", 1);
10296
10297 print_VkBool32(obj->sampleShadingEnable, "sampleShadingEnable", 1);
10298
10299 print_float(obj->minSampleShading, "minSampleShading", 1);
10300
10301 deUint32 sampleMaskSize = ((obj->rasterizationSamples + 31) / 32);
10302 PRINT_SPACE
10303 _OUT << "\"pSampleMask\":" << std::endl;
10304 PRINT_SPACE
10305 if (obj->pSampleMask) {
10306 _OUT << "[" << std::endl;
10307 for (unsigned int i = 0; i < sampleMaskSize; i++) {
10308 bool isCommaNeeded = (i+1) != sampleMaskSize;
10309 print_uint32_t(obj->pSampleMask[i], "", isCommaNeeded);
10310 }
10311 PRINT_SPACE
10312 _OUT << "]" << "," << std::endl;
10313 } else {
10314 _OUT << "\"NULL\"" << "," << std::endl;
10315 }
10316
10317 print_VkBool32(obj->alphaToCoverageEnable, "alphaToCoverageEnable", 1);
10318
10319 print_VkBool32(obj->alphaToOneEnable, "alphaToOneEnable", 0);
10320
10321 INDENT(-4);
10322 PRINT_SPACE
10323 if (commaNeeded)
10324 _OUT << "}," << std::endl;
10325 else
10326 _OUT << "}" << std::endl;
10327 }
10328
print_VkStencilOpState(VkStencilOpState obj,const std::string & s,bool commaNeeded=true)10329 static void print_VkStencilOpState(VkStencilOpState obj, const std::string& s, bool commaNeeded=true) {
10330 PRINT_SPACE
10331 _OUT << "{" << std::endl;
10332 INDENT(4);
10333
10334 print_VkStencilOp(obj.failOp, "failOp", 1);
10335
10336 print_VkStencilOp(obj.passOp, "passOp", 1);
10337
10338 print_VkStencilOp(obj.depthFailOp, "depthFailOp", 1);
10339
10340 print_VkCompareOp(obj.compareOp, "compareOp", 1);
10341
10342 print_uint32_t(obj.compareMask, "compareMask", 1);
10343
10344 print_uint32_t(obj.writeMask, "writeMask", 1);
10345
10346 print_uint32_t(obj.reference, "reference", 0);
10347
10348 INDENT(-4);
10349 PRINT_SPACE
10350 if (commaNeeded)
10351 _OUT << "}," << std::endl;
10352 else
10353 _OUT << "}" << std::endl;
10354 }
print_VkStencilOpState(const VkStencilOpState * obj,const std::string & s,bool commaNeeded=true)10355 static void print_VkStencilOpState(const VkStencilOpState * obj, const std::string& s, bool commaNeeded=true) {
10356 PRINT_SPACE
10357 _OUT << "{" << std::endl;
10358 INDENT(4);
10359
10360 print_VkStencilOp(obj->failOp, "failOp", 1);
10361
10362 print_VkStencilOp(obj->passOp, "passOp", 1);
10363
10364 print_VkStencilOp(obj->depthFailOp, "depthFailOp", 1);
10365
10366 print_VkCompareOp(obj->compareOp, "compareOp", 1);
10367
10368 print_uint32_t(obj->compareMask, "compareMask", 1);
10369
10370 print_uint32_t(obj->writeMask, "writeMask", 1);
10371
10372 print_uint32_t(obj->reference, "reference", 0);
10373
10374 INDENT(-4);
10375 PRINT_SPACE
10376 if (commaNeeded)
10377 _OUT << "}," << std::endl;
10378 else
10379 _OUT << "}" << std::endl;
10380 }
10381
print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10382 static void print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10383 PRINT_SPACE
10384 _OUT << "{" << std::endl;
10385 INDENT(4);
10386
10387 print_VkStructureType(obj.sType, "sType", 1);
10388
10389 if (obj.pNext) {
10390 dumpPNextChain(obj.pNext);
10391 } else {
10392 PRINT_SPACE
10393 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10394 }
10395
10396 print_VkPipelineDepthStencilStateCreateFlags(obj.flags, "flags", 1);
10397
10398 print_VkBool32(obj.depthTestEnable, "depthTestEnable", 1);
10399
10400 print_VkBool32(obj.depthWriteEnable, "depthWriteEnable", 1);
10401
10402 print_VkCompareOp(obj.depthCompareOp, "depthCompareOp", 1);
10403
10404 print_VkBool32(obj.depthBoundsTestEnable, "depthBoundsTestEnable", 1);
10405
10406 print_VkBool32(obj.stencilTestEnable, "stencilTestEnable", 1);
10407
10408 PRINT_SPACE
10409 _OUT << "\"front\": " << std::endl;
10410 {
10411 print_VkStencilOpState(obj.front, "front", 1);
10412 }
10413
10414 PRINT_SPACE
10415 _OUT << "\"back\": " << std::endl;
10416 {
10417 print_VkStencilOpState(obj.back, "back", 1);
10418 }
10419
10420 print_float(obj.minDepthBounds, "minDepthBounds", 1);
10421
10422 print_float(obj.maxDepthBounds, "maxDepthBounds", 0);
10423
10424 INDENT(-4);
10425 PRINT_SPACE
10426 if (commaNeeded)
10427 _OUT << "}," << std::endl;
10428 else
10429 _OUT << "}" << std::endl;
10430 }
print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10431 static void print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10432 PRINT_SPACE
10433 _OUT << "{" << std::endl;
10434 INDENT(4);
10435
10436 print_VkStructureType(obj->sType, "sType", 1);
10437
10438 if (obj->pNext) {
10439 dumpPNextChain(obj->pNext);
10440 } else {
10441 PRINT_SPACE
10442 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10443 }
10444
10445 print_VkPipelineDepthStencilStateCreateFlags(obj->flags, "flags", 1);
10446
10447 print_VkBool32(obj->depthTestEnable, "depthTestEnable", 1);
10448
10449 print_VkBool32(obj->depthWriteEnable, "depthWriteEnable", 1);
10450
10451 print_VkCompareOp(obj->depthCompareOp, "depthCompareOp", 1);
10452
10453 print_VkBool32(obj->depthBoundsTestEnable, "depthBoundsTestEnable", 1);
10454
10455 print_VkBool32(obj->stencilTestEnable, "stencilTestEnable", 1);
10456
10457 PRINT_SPACE
10458 _OUT << "\"front\": " << std::endl;
10459 {
10460 print_VkStencilOpState(obj->front, "front", 1);
10461 }
10462
10463 PRINT_SPACE
10464 _OUT << "\"back\": " << std::endl;
10465 {
10466 print_VkStencilOpState(obj->back, "back", 1);
10467 }
10468
10469 print_float(obj->minDepthBounds, "minDepthBounds", 1);
10470
10471 print_float(obj->maxDepthBounds, "maxDepthBounds", 0);
10472
10473 INDENT(-4);
10474 PRINT_SPACE
10475 if (commaNeeded)
10476 _OUT << "}," << std::endl;
10477 else
10478 _OUT << "}" << std::endl;
10479 }
10480
print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj,const std::string & s,bool commaNeeded=true)10481 static void print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj, const std::string& s, bool commaNeeded=true) {
10482 PRINT_SPACE
10483 _OUT << "{" << std::endl;
10484 INDENT(4);
10485
10486 print_VkBool32(obj.blendEnable, "blendEnable", 1);
10487
10488 print_VkBlendFactor(obj.srcColorBlendFactor, "srcColorBlendFactor", 1);
10489
10490 print_VkBlendFactor(obj.dstColorBlendFactor, "dstColorBlendFactor", 1);
10491
10492 print_VkBlendOp(obj.colorBlendOp, "colorBlendOp", 1);
10493
10494 print_VkBlendFactor(obj.srcAlphaBlendFactor, "srcAlphaBlendFactor", 1);
10495
10496 print_VkBlendFactor(obj.dstAlphaBlendFactor, "dstAlphaBlendFactor", 1);
10497
10498 print_VkBlendOp(obj.alphaBlendOp, "alphaBlendOp", 1);
10499
10500 print_VkColorComponentFlags(obj.colorWriteMask, "colorWriteMask", 0);
10501
10502 INDENT(-4);
10503 PRINT_SPACE
10504 if (commaNeeded)
10505 _OUT << "}," << std::endl;
10506 else
10507 _OUT << "}" << std::endl;
10508 }
print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * obj,const std::string & s,bool commaNeeded=true)10509 static void print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * obj, const std::string& s, bool commaNeeded=true) {
10510 PRINT_SPACE
10511 _OUT << "{" << std::endl;
10512 INDENT(4);
10513
10514 print_VkBool32(obj->blendEnable, "blendEnable", 1);
10515
10516 print_VkBlendFactor(obj->srcColorBlendFactor, "srcColorBlendFactor", 1);
10517
10518 print_VkBlendFactor(obj->dstColorBlendFactor, "dstColorBlendFactor", 1);
10519
10520 print_VkBlendOp(obj->colorBlendOp, "colorBlendOp", 1);
10521
10522 print_VkBlendFactor(obj->srcAlphaBlendFactor, "srcAlphaBlendFactor", 1);
10523
10524 print_VkBlendFactor(obj->dstAlphaBlendFactor, "dstAlphaBlendFactor", 1);
10525
10526 print_VkBlendOp(obj->alphaBlendOp, "alphaBlendOp", 1);
10527
10528 print_VkColorComponentFlags(obj->colorWriteMask, "colorWriteMask", 0);
10529
10530 INDENT(-4);
10531 PRINT_SPACE
10532 if (commaNeeded)
10533 _OUT << "}," << std::endl;
10534 else
10535 _OUT << "}" << std::endl;
10536 }
10537
print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10538 static void print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10539 PRINT_SPACE
10540 _OUT << "{" << std::endl;
10541 INDENT(4);
10542
10543 print_VkStructureType(obj.sType, "sType", 1);
10544
10545 if (obj.pNext) {
10546 dumpPNextChain(obj.pNext);
10547 } else {
10548 PRINT_SPACE
10549 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10550 }
10551
10552 print_VkPipelineColorBlendStateCreateFlags(obj.flags, "flags", 1);
10553
10554 print_VkBool32(obj.logicOpEnable, "logicOpEnable", 1);
10555
10556 print_VkLogicOp(obj.logicOp, "logicOp", 1);
10557
10558 print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
10559
10560 PRINT_SPACE
10561 _OUT << "\"pAttachments\": " << std::endl;
10562 if (obj.pAttachments) {
10563 PRINT_SPACE
10564 _OUT << "[" << std::endl;
10565 for (unsigned int i = 0; i < obj.attachmentCount; i++) {
10566 if (i+1 == obj.attachmentCount)
10567 print_VkPipelineColorBlendAttachmentState(obj.pAttachments[i], "pAttachments", 0);
10568 else
10569 print_VkPipelineColorBlendAttachmentState(obj.pAttachments[i], "pAttachments", 1);
10570 }
10571 PRINT_SPACE
10572 _OUT << "]," << std::endl;
10573 }
10574 else
10575 {
10576 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10577 }
10578
10579 PRINT_SPACE
10580 _OUT << "\"blendConstants\":" << std::endl;
10581 PRINT_SPACE
10582 if (obj.blendConstants) {
10583 _OUT << "[" << std::endl;
10584 for (unsigned int i = 0; i < 4; i++) {
10585 bool isCommaNeeded = (i+1) != 4;
10586 print_float(obj.blendConstants[i], "", isCommaNeeded);
10587 }
10588 PRINT_SPACE
10589 _OUT << "]" << "" << std::endl;
10590 } else {
10591 _OUT << "\"NULL\"" << "" << std::endl;
10592 }
10593
10594 INDENT(-4);
10595 PRINT_SPACE
10596 if (commaNeeded)
10597 _OUT << "}," << std::endl;
10598 else
10599 _OUT << "}" << std::endl;
10600 }
print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10601 static void print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10602 PRINT_SPACE
10603 _OUT << "{" << std::endl;
10604 INDENT(4);
10605
10606 print_VkStructureType(obj->sType, "sType", 1);
10607
10608 if (obj->pNext) {
10609 dumpPNextChain(obj->pNext);
10610 } else {
10611 PRINT_SPACE
10612 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10613 }
10614
10615 print_VkPipelineColorBlendStateCreateFlags(obj->flags, "flags", 1);
10616
10617 print_VkBool32(obj->logicOpEnable, "logicOpEnable", 1);
10618
10619 print_VkLogicOp(obj->logicOp, "logicOp", 1);
10620
10621 print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
10622
10623 PRINT_SPACE
10624 _OUT << "\"pAttachments\": " << std::endl;
10625 if (obj->pAttachments) {
10626 PRINT_SPACE
10627 _OUT << "[" << std::endl;
10628 for (unsigned int i = 0; i < obj->attachmentCount; i++) {
10629 if (i+1 == obj->attachmentCount)
10630 print_VkPipelineColorBlendAttachmentState(obj->pAttachments[i], "pAttachments", 0);
10631 else
10632 print_VkPipelineColorBlendAttachmentState(obj->pAttachments[i], "pAttachments", 1);
10633 }
10634 PRINT_SPACE
10635 _OUT << "]," << std::endl;
10636 }
10637 else
10638 {
10639 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10640 }
10641
10642 PRINT_SPACE
10643 _OUT << "\"blendConstants\":" << std::endl;
10644 PRINT_SPACE
10645 if (obj->blendConstants) {
10646 _OUT << "[" << std::endl;
10647 for (unsigned int i = 0; i < 4; i++) {
10648 bool isCommaNeeded = (i+1) != 4;
10649 print_float(obj->blendConstants[i], "", isCommaNeeded);
10650 }
10651 PRINT_SPACE
10652 _OUT << "]" << "" << std::endl;
10653 } else {
10654 _OUT << "\"NULL\"" << "" << std::endl;
10655 }
10656
10657 INDENT(-4);
10658 PRINT_SPACE
10659 if (commaNeeded)
10660 _OUT << "}," << std::endl;
10661 else
10662 _OUT << "}" << std::endl;
10663 }
10664
print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10665 static void print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10666 PRINT_SPACE
10667 _OUT << "{" << std::endl;
10668 INDENT(4);
10669
10670 print_VkStructureType(obj.sType, "sType", 1);
10671
10672 if (obj.pNext) {
10673 dumpPNextChain(obj.pNext);
10674 } else {
10675 PRINT_SPACE
10676 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10677 }
10678
10679 print_VkPipelineDynamicStateCreateFlags(obj.flags, "flags", 1);
10680
10681 print_uint32_t(obj.dynamicStateCount, "dynamicStateCount", 1);
10682
10683 PRINT_SPACE
10684 _OUT << "\"pDynamicStates\":" << std::endl;
10685 PRINT_SPACE
10686 if (obj.pDynamicStates) {
10687 _OUT << "[" << std::endl;
10688 for (unsigned int i = 0; i < obj.dynamicStateCount; i++) {
10689 bool isCommaNeeded = (i+1) != obj.dynamicStateCount;
10690 print_VkDynamicState(obj.pDynamicStates[i], "", isCommaNeeded);
10691 }
10692 PRINT_SPACE
10693 _OUT << "]" << "" << std::endl;
10694 } else {
10695 _OUT << "\"NULL\"" << "" << std::endl;
10696 }
10697
10698 INDENT(-4);
10699 PRINT_SPACE
10700 if (commaNeeded)
10701 _OUT << "}," << std::endl;
10702 else
10703 _OUT << "}" << std::endl;
10704 }
print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10705 static void print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10706 PRINT_SPACE
10707 _OUT << "{" << std::endl;
10708 INDENT(4);
10709
10710 print_VkStructureType(obj->sType, "sType", 1);
10711
10712 if (obj->pNext) {
10713 dumpPNextChain(obj->pNext);
10714 } else {
10715 PRINT_SPACE
10716 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10717 }
10718
10719 print_VkPipelineDynamicStateCreateFlags(obj->flags, "flags", 1);
10720
10721 print_uint32_t(obj->dynamicStateCount, "dynamicStateCount", 1);
10722
10723 PRINT_SPACE
10724 _OUT << "\"pDynamicStates\":" << std::endl;
10725 PRINT_SPACE
10726 if (obj->pDynamicStates) {
10727 _OUT << "[" << std::endl;
10728 for (unsigned int i = 0; i < obj->dynamicStateCount; i++) {
10729 bool isCommaNeeded = (i+1) != obj->dynamicStateCount;
10730 print_VkDynamicState(obj->pDynamicStates[i], "", isCommaNeeded);
10731 }
10732 PRINT_SPACE
10733 _OUT << "]" << "" << std::endl;
10734 } else {
10735 _OUT << "\"NULL\"" << "" << std::endl;
10736 }
10737
10738 INDENT(-4);
10739 PRINT_SPACE
10740 if (commaNeeded)
10741 _OUT << "}," << std::endl;
10742 else
10743 _OUT << "}" << std::endl;
10744 }
10745
print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj,const std::string & s,bool commaNeeded=true)10746 static void print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10747 PRINT_SPACE
10748 _OUT << "{" << std::endl;
10749 INDENT(4);
10750
10751 print_VkStructureType(obj.sType, "sType", 1);
10752
10753 if (obj.pNext) {
10754 dumpPNextChain(obj.pNext);
10755 } else {
10756 PRINT_SPACE
10757 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10758 }
10759
10760 print_VkPipelineCreateFlags(obj.flags, "flags", 1);
10761
10762 print_uint32_t(obj.stageCount, "stageCount", 1);
10763
10764 PRINT_SPACE
10765 _OUT << "\"pStages\": " << std::endl;
10766 if (obj.pStages) {
10767 PRINT_SPACE
10768 _OUT << "[" << std::endl;
10769 for (unsigned int i = 0; i < obj.stageCount; i++) {
10770 if (i+1 == obj.stageCount)
10771 print_VkPipelineShaderStageCreateInfo(obj.pStages[i], "pStages", 0);
10772 else
10773 print_VkPipelineShaderStageCreateInfo(obj.pStages[i], "pStages", 1);
10774 }
10775 PRINT_SPACE
10776 _OUT << "]," << std::endl;
10777 }
10778 else
10779 {
10780 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10781 }
10782
10783 PRINT_SPACE
10784 _OUT << "\"pVertexInputState\": " << std::endl;
10785 if (obj.pVertexInputState) {
10786 print_VkPipelineVertexInputStateCreateInfo(obj.pVertexInputState, "pVertexInputState", 1);
10787 }
10788 else
10789 {
10790 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10791 }
10792
10793 PRINT_SPACE
10794 _OUT << "\"pInputAssemblyState\": " << std::endl;
10795 if (obj.pInputAssemblyState) {
10796 print_VkPipelineInputAssemblyStateCreateInfo(obj.pInputAssemblyState, "pInputAssemblyState", 1);
10797 }
10798 else
10799 {
10800 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10801 }
10802
10803 PRINT_SPACE
10804 _OUT << "\"pTessellationState\": " << std::endl;
10805 if (obj.pTessellationState) {
10806 print_VkPipelineTessellationStateCreateInfo(obj.pTessellationState, "pTessellationState", 1);
10807 }
10808 else
10809 {
10810 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10811 }
10812
10813 PRINT_SPACE
10814 _OUT << "\"pViewportState\": " << std::endl;
10815 if (obj.pViewportState) {
10816 print_VkPipelineViewportStateCreateInfo(obj.pViewportState, "pViewportState", 1);
10817 }
10818 else
10819 {
10820 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10821 }
10822
10823 PRINT_SPACE
10824 _OUT << "\"pRasterizationState\": " << std::endl;
10825 if (obj.pRasterizationState) {
10826 print_VkPipelineRasterizationStateCreateInfo(obj.pRasterizationState, "pRasterizationState", 1);
10827 }
10828 else
10829 {
10830 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10831 }
10832
10833 PRINT_SPACE
10834 _OUT << "\"pMultisampleState\": " << std::endl;
10835 if (obj.pMultisampleState) {
10836 print_VkPipelineMultisampleStateCreateInfo(obj.pMultisampleState, "pMultisampleState", 1);
10837 }
10838 else
10839 {
10840 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10841 }
10842
10843 PRINT_SPACE
10844 _OUT << "\"pDepthStencilState\": " << std::endl;
10845 if (obj.pDepthStencilState) {
10846 print_VkPipelineDepthStencilStateCreateInfo(obj.pDepthStencilState, "pDepthStencilState", 1);
10847 }
10848 else
10849 {
10850 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10851 }
10852
10853 PRINT_SPACE
10854 _OUT << "\"pColorBlendState\": " << std::endl;
10855 if (obj.pColorBlendState) {
10856 print_VkPipelineColorBlendStateCreateInfo(obj.pColorBlendState, "pColorBlendState", 1);
10857 }
10858 else
10859 {
10860 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10861 }
10862
10863 PRINT_SPACE
10864 _OUT << "\"pDynamicState\": " << std::endl;
10865 if (obj.pDynamicState) {
10866 print_VkPipelineDynamicStateCreateInfo(obj.pDynamicState, "pDynamicState", 1);
10867 }
10868 else
10869 {
10870 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10871 }
10872
10873 // CTS : required value
10874 PRINT_SPACE _OUT << "\"" << "layout" << "\"" << " : " << obj.layout.getInternal() << "," << std::endl;
10875
10876 // CTS : required value
10877 PRINT_SPACE _OUT << "\"" << "renderPass" << "\"" << " : " << obj.renderPass.getInternal() << "," << std::endl;
10878
10879 print_uint32_t(obj.subpass, "subpass", 1);
10880
10881 // CTS : required value
10882 PRINT_SPACE _OUT << "\"" << "basePipelineHandle" << "\"" << " : " << "\"" << "\"," << std::endl;
10883
10884 print_int32_t(obj.basePipelineIndex, "basePipelineIndex", 0);
10885
10886 INDENT(-4);
10887 PRINT_SPACE
10888 if (commaNeeded)
10889 _OUT << "}," << std::endl;
10890 else
10891 _OUT << "}" << std::endl;
10892 }
print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * obj,const std::string & s,bool commaNeeded=true)10893 static void print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10894 PRINT_SPACE
10895 _OUT << "{" << std::endl;
10896 INDENT(4);
10897
10898 print_VkStructureType(obj->sType, "sType", 1);
10899
10900 if (obj->pNext) {
10901 dumpPNextChain(obj->pNext);
10902 } else {
10903 PRINT_SPACE
10904 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10905 }
10906
10907 print_VkPipelineCreateFlags(obj->flags, "flags", 1);
10908
10909 print_uint32_t(obj->stageCount, "stageCount", 1);
10910
10911 PRINT_SPACE
10912 _OUT << "\"pStages\": " << std::endl;
10913 if (obj->pStages) {
10914 PRINT_SPACE
10915 _OUT << "[" << std::endl;
10916 for (unsigned int i = 0; i < obj->stageCount; i++) {
10917 if (i+1 == obj->stageCount)
10918 print_VkPipelineShaderStageCreateInfo(obj->pStages[i], "pStages", 0);
10919 else
10920 print_VkPipelineShaderStageCreateInfo(obj->pStages[i], "pStages", 1);
10921 }
10922 PRINT_SPACE
10923 _OUT << "]," << std::endl;
10924 }
10925 else
10926 {
10927 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10928 }
10929
10930 PRINT_SPACE
10931 _OUT << "\"pVertexInputState\": " << std::endl;
10932 if (obj->pVertexInputState) {
10933 print_VkPipelineVertexInputStateCreateInfo(obj->pVertexInputState, "pVertexInputState", 1);
10934 }
10935 else
10936 {
10937 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10938 }
10939
10940 PRINT_SPACE
10941 _OUT << "\"pInputAssemblyState\": " << std::endl;
10942 if (obj->pInputAssemblyState) {
10943 print_VkPipelineInputAssemblyStateCreateInfo(obj->pInputAssemblyState, "pInputAssemblyState", 1);
10944 }
10945 else
10946 {
10947 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10948 }
10949
10950 PRINT_SPACE
10951 _OUT << "\"pTessellationState\": " << std::endl;
10952 if (obj->pTessellationState) {
10953 print_VkPipelineTessellationStateCreateInfo(obj->pTessellationState, "pTessellationState", 1);
10954 }
10955 else
10956 {
10957 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10958 }
10959
10960 PRINT_SPACE
10961 _OUT << "\"pViewportState\": " << std::endl;
10962 if (obj->pViewportState) {
10963 print_VkPipelineViewportStateCreateInfo(obj->pViewportState, "pViewportState", 1);
10964 }
10965 else
10966 {
10967 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10968 }
10969
10970 PRINT_SPACE
10971 _OUT << "\"pRasterizationState\": " << std::endl;
10972 if (obj->pRasterizationState) {
10973 print_VkPipelineRasterizationStateCreateInfo(obj->pRasterizationState, "pRasterizationState", 1);
10974 }
10975 else
10976 {
10977 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10978 }
10979
10980 PRINT_SPACE
10981 _OUT << "\"pMultisampleState\": " << std::endl;
10982 if (obj->pMultisampleState) {
10983 print_VkPipelineMultisampleStateCreateInfo(obj->pMultisampleState, "pMultisampleState", 1);
10984 }
10985 else
10986 {
10987 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10988 }
10989
10990 PRINT_SPACE
10991 _OUT << "\"pDepthStencilState\": " << std::endl;
10992 if (obj->pDepthStencilState) {
10993 print_VkPipelineDepthStencilStateCreateInfo(obj->pDepthStencilState, "pDepthStencilState", 1);
10994 }
10995 else
10996 {
10997 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10998 }
10999
11000 PRINT_SPACE
11001 _OUT << "\"pColorBlendState\": " << std::endl;
11002 if (obj->pColorBlendState) {
11003 print_VkPipelineColorBlendStateCreateInfo(obj->pColorBlendState, "pColorBlendState", 1);
11004 }
11005 else
11006 {
11007 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
11008 }
11009
11010 PRINT_SPACE
11011 _OUT << "\"pDynamicState\": " << std::endl;
11012 if (obj->pDynamicState) {
11013 print_VkPipelineDynamicStateCreateInfo(obj->pDynamicState, "pDynamicState", 1);
11014 }
11015 else
11016 {
11017 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
11018 }
11019
11020 // CTS : required value
11021 PRINT_SPACE _OUT << "\"" << "layout" << "\"" << " : " << obj->layout.getInternal() << "," << std::endl;
11022
11023 // CTS : required value
11024 PRINT_SPACE _OUT << "\"" << "renderPass" << "\"" << " : " << obj->renderPass.getInternal() << "," << std::endl;
11025
11026 print_uint32_t(obj->subpass, "subpass", 1);
11027
11028 // CTS : required value
11029 PRINT_SPACE _OUT << "\"" << "basePipelineHandle" << "\"" << " : " << "\"" << "\"," << std::endl;
11030
11031 print_int32_t(obj->basePipelineIndex, "basePipelineIndex", 0);
11032
11033 INDENT(-4);
11034 PRINT_SPACE
11035 if (commaNeeded)
11036 _OUT << "}," << std::endl;
11037 else
11038 _OUT << "}" << std::endl;
11039 }
11040
print_VkPushConstantRange(VkPushConstantRange obj,const std::string & s,bool commaNeeded=true)11041 static void print_VkPushConstantRange(VkPushConstantRange obj, const std::string& s, bool commaNeeded=true) {
11042 PRINT_SPACE
11043 _OUT << "{" << std::endl;
11044 INDENT(4);
11045
11046 print_VkShaderStageFlags(obj.stageFlags, "stageFlags", 1);
11047
11048 print_uint32_t(obj.offset, "offset", 1);
11049
11050 print_uint32_t(obj.size, "size", 0);
11051
11052 INDENT(-4);
11053 PRINT_SPACE
11054 if (commaNeeded)
11055 _OUT << "}," << std::endl;
11056 else
11057 _OUT << "}" << std::endl;
11058 }
print_VkPushConstantRange(const VkPushConstantRange * obj,const std::string & s,bool commaNeeded=true)11059 static void print_VkPushConstantRange(const VkPushConstantRange * obj, const std::string& s, bool commaNeeded=true) {
11060 PRINT_SPACE
11061 _OUT << "{" << std::endl;
11062 INDENT(4);
11063
11064 print_VkShaderStageFlags(obj->stageFlags, "stageFlags", 1);
11065
11066 print_uint32_t(obj->offset, "offset", 1);
11067
11068 print_uint32_t(obj->size, "size", 0);
11069
11070 INDENT(-4);
11071 PRINT_SPACE
11072 if (commaNeeded)
11073 _OUT << "}," << std::endl;
11074 else
11075 _OUT << "}" << std::endl;
11076 }
11077
print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj,const std::string & s,bool commaNeeded=true)11078 static void print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj, const std::string& s, bool commaNeeded=true) {
11079 PRINT_SPACE
11080 _OUT << "{" << std::endl;
11081 INDENT(4);
11082
11083 print_VkStructureType(obj.sType, "sType", 1);
11084
11085 if (obj.pNext) {
11086 dumpPNextChain(obj.pNext);
11087 } else {
11088 PRINT_SPACE
11089 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11090 }
11091
11092 print_VkPipelineLayoutCreateFlags(obj.flags, "flags", 1);
11093
11094 print_uint32_t(obj.setLayoutCount, "setLayoutCount", 1);
11095
11096 PRINT_SPACE
11097 _OUT << "\"pSetLayouts\":" << std::endl;
11098 PRINT_SPACE
11099 if (obj.pSetLayouts) {
11100 _OUT << "[" << std::endl;
11101 for (unsigned int i = 0; i < obj.setLayoutCount; i++) {
11102 bool isCommaNeeded = (i+1) != obj.setLayoutCount;
11103 if (isCommaNeeded)
11104 {
11105 PRINT_SPACE
11106 _OUT << obj.pSetLayouts[i].getInternal() << "," << std::endl;
11107 }
11108 else
11109 {
11110 PRINT_SPACE
11111 _OUT << obj.pSetLayouts[i].getInternal() << std::endl;
11112 }
11113 }
11114 PRINT_SPACE
11115 _OUT << "]" << "," << std::endl;
11116 } else {
11117 _OUT << "\"NULL\"" << "," << std::endl;
11118 }
11119
11120 print_uint32_t(obj.pushConstantRangeCount, "pushConstantRangeCount", 1);
11121
11122 PRINT_SPACE
11123 _OUT << "\"pPushConstantRanges\": " << std::endl;
11124 if (obj.pPushConstantRanges) {
11125 PRINT_SPACE
11126 _OUT << "[" << std::endl;
11127 for (unsigned int i = 0; i < obj.pushConstantRangeCount; i++) {
11128 if (i+1 == obj.pushConstantRangeCount)
11129 print_VkPushConstantRange(obj.pPushConstantRanges[i], "pPushConstantRanges", 0);
11130 else
11131 print_VkPushConstantRange(obj.pPushConstantRanges[i], "pPushConstantRanges", 1);
11132 }
11133 PRINT_SPACE
11134 _OUT << "]" << std::endl;
11135 }
11136 else
11137 {
11138 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11139 }
11140
11141 INDENT(-4);
11142 PRINT_SPACE
11143 if (commaNeeded)
11144 _OUT << "}," << std::endl;
11145 else
11146 _OUT << "}" << std::endl;
11147 }
print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * obj,const std::string & s,bool commaNeeded=true)11148 static void print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
11149 PRINT_SPACE
11150 _OUT << "{" << std::endl;
11151 INDENT(4);
11152
11153 print_VkStructureType(obj->sType, "sType", 1);
11154
11155 if (obj->pNext) {
11156 dumpPNextChain(obj->pNext);
11157 } else {
11158 PRINT_SPACE
11159 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11160 }
11161
11162 print_VkPipelineLayoutCreateFlags(obj->flags, "flags", 1);
11163
11164 print_uint32_t(obj->setLayoutCount, "setLayoutCount", 1);
11165
11166 PRINT_SPACE
11167 _OUT << "\"pSetLayouts\":" << std::endl;
11168 PRINT_SPACE
11169 if (obj->pSetLayouts) {
11170 _OUT << "[" << std::endl;
11171 for (unsigned int i = 0; i < obj->setLayoutCount; i++) {
11172 bool isCommaNeeded = (i+1) != obj->setLayoutCount;
11173 if (isCommaNeeded)
11174 {
11175 PRINT_SPACE
11176 _OUT << obj->pSetLayouts[i].getInternal() << "," << std::endl;
11177 }
11178 else
11179 {
11180 PRINT_SPACE
11181 _OUT << obj->pSetLayouts[i].getInternal() << std::endl;
11182 }
11183 }
11184 PRINT_SPACE
11185 _OUT << "]" << "," << std::endl;
11186 } else {
11187 _OUT << "\"NULL\"" << "," << std::endl;
11188 }
11189
11190 print_uint32_t(obj->pushConstantRangeCount, "pushConstantRangeCount", 1);
11191
11192 PRINT_SPACE
11193 _OUT << "\"pPushConstantRanges\": " << std::endl;
11194 if (obj->pPushConstantRanges) {
11195 PRINT_SPACE
11196 _OUT << "[" << std::endl;
11197 for (unsigned int i = 0; i < obj->pushConstantRangeCount; i++) {
11198 if (i+1 == obj->pushConstantRangeCount)
11199 print_VkPushConstantRange(obj->pPushConstantRanges[i], "pPushConstantRanges", 0);
11200 else
11201 print_VkPushConstantRange(obj->pPushConstantRanges[i], "pPushConstantRanges", 1);
11202 }
11203 PRINT_SPACE
11204 _OUT << "]" << std::endl;
11205 }
11206 else
11207 {
11208 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11209 }
11210
11211 INDENT(-4);
11212 PRINT_SPACE
11213 if (commaNeeded)
11214 _OUT << "}," << std::endl;
11215 else
11216 _OUT << "}" << std::endl;
11217 }
11218
print_VkSamplerCreateInfo(VkSamplerCreateInfo obj,const std::string & s,bool commaNeeded=true)11219 static void print_VkSamplerCreateInfo(VkSamplerCreateInfo obj, const std::string& s, bool commaNeeded=true) {
11220 PRINT_SPACE
11221 _OUT << "{" << std::endl;
11222 INDENT(4);
11223
11224 print_VkStructureType(obj.sType, "sType", 1);
11225
11226 if (obj.pNext) {
11227 dumpPNextChain(obj.pNext);
11228 } else {
11229 PRINT_SPACE
11230 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11231 }
11232
11233 print_VkSamplerCreateFlags(obj.flags, "flags", 1);
11234
11235 print_VkFilter(obj.magFilter, "magFilter", 1);
11236
11237 print_VkFilter(obj.minFilter, "minFilter", 1);
11238
11239 print_VkSamplerMipmapMode(obj.mipmapMode, "mipmapMode", 1);
11240
11241 print_VkSamplerAddressMode(obj.addressModeU, "addressModeU", 1);
11242
11243 print_VkSamplerAddressMode(obj.addressModeV, "addressModeV", 1);
11244
11245 print_VkSamplerAddressMode(obj.addressModeW, "addressModeW", 1);
11246
11247 print_float(obj.mipLodBias, "mipLodBias", 1);
11248
11249 print_VkBool32(obj.anisotropyEnable, "anisotropyEnable", 1);
11250
11251 print_float(obj.maxAnisotropy, "maxAnisotropy", 1);
11252
11253 print_VkBool32(obj.compareEnable, "compareEnable", 1);
11254
11255 print_VkCompareOp(obj.compareOp, "compareOp", 1);
11256
11257 print_float(obj.minLod, "minLod", 1);
11258
11259 print_float(obj.maxLod, "maxLod", 1);
11260
11261 print_VkBorderColor(obj.borderColor, "borderColor", 1);
11262
11263 print_VkBool32(obj.unnormalizedCoordinates, "unnormalizedCoordinates", 0);
11264
11265 INDENT(-4);
11266 PRINT_SPACE
11267 if (commaNeeded)
11268 _OUT << "}," << std::endl;
11269 else
11270 _OUT << "}" << std::endl;
11271 }
print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj,const std::string & s,bool commaNeeded=true)11272 static void print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
11273 PRINT_SPACE
11274 _OUT << "{" << std::endl;
11275 INDENT(4);
11276
11277 print_VkStructureType(obj->sType, "sType", 1);
11278
11279 if (obj->pNext) {
11280 dumpPNextChain(obj->pNext);
11281 } else {
11282 PRINT_SPACE
11283 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11284 }
11285
11286 print_VkSamplerCreateFlags(obj->flags, "flags", 1);
11287
11288 print_VkFilter(obj->magFilter, "magFilter", 1);
11289
11290 print_VkFilter(obj->minFilter, "minFilter", 1);
11291
11292 print_VkSamplerMipmapMode(obj->mipmapMode, "mipmapMode", 1);
11293
11294 print_VkSamplerAddressMode(obj->addressModeU, "addressModeU", 1);
11295
11296 print_VkSamplerAddressMode(obj->addressModeV, "addressModeV", 1);
11297
11298 print_VkSamplerAddressMode(obj->addressModeW, "addressModeW", 1);
11299
11300 print_float(obj->mipLodBias, "mipLodBias", 1);
11301
11302 print_VkBool32(obj->anisotropyEnable, "anisotropyEnable", 1);
11303
11304 print_float(obj->maxAnisotropy, "maxAnisotropy", 1);
11305
11306 print_VkBool32(obj->compareEnable, "compareEnable", 1);
11307
11308 print_VkCompareOp(obj->compareOp, "compareOp", 1);
11309
11310 print_float(obj->minLod, "minLod", 1);
11311
11312 print_float(obj->maxLod, "maxLod", 1);
11313
11314 print_VkBorderColor(obj->borderColor, "borderColor", 1);
11315
11316 print_VkBool32(obj->unnormalizedCoordinates, "unnormalizedCoordinates", 0);
11317
11318 INDENT(-4);
11319 PRINT_SPACE
11320 if (commaNeeded)
11321 _OUT << "}," << std::endl;
11322 else
11323 _OUT << "}" << std::endl;
11324 }
11325
print_VkCopyDescriptorSet(VkCopyDescriptorSet obj,const std::string & s,bool commaNeeded=true)11326 static void print_VkCopyDescriptorSet(VkCopyDescriptorSet obj, const std::string& s, bool commaNeeded=true) {
11327 PRINT_SPACE
11328 _OUT << "{" << std::endl;
11329 INDENT(4);
11330
11331 print_VkStructureType(obj.sType, "sType", 1);
11332
11333 if (obj.pNext) {
11334 dumpPNextChain(obj.pNext);
11335 } else {
11336 PRINT_SPACE
11337 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11338 }
11339
11340 // CTS : required value
11341 PRINT_SPACE _OUT << "\"" << "srcSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11342
11343 print_uint32_t(obj.srcBinding, "srcBinding", 1);
11344
11345 print_uint32_t(obj.srcArrayElement, "srcArrayElement", 1);
11346
11347 // CTS : required value
11348 PRINT_SPACE _OUT << "\"" << "dstSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11349
11350 print_uint32_t(obj.dstBinding, "dstBinding", 1);
11351
11352 print_uint32_t(obj.dstArrayElement, "dstArrayElement", 1);
11353
11354 print_uint32_t(obj.descriptorCount, "descriptorCount", 0);
11355
11356 INDENT(-4);
11357 PRINT_SPACE
11358 if (commaNeeded)
11359 _OUT << "}," << std::endl;
11360 else
11361 _OUT << "}" << std::endl;
11362 }
print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj,const std::string & s,bool commaNeeded=true)11363 static void print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj, const std::string& s, bool commaNeeded=true) {
11364 PRINT_SPACE
11365 _OUT << "{" << std::endl;
11366 INDENT(4);
11367
11368 print_VkStructureType(obj->sType, "sType", 1);
11369
11370 if (obj->pNext) {
11371 dumpPNextChain(obj->pNext);
11372 } else {
11373 PRINT_SPACE
11374 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11375 }
11376
11377 // CTS : required value
11378 PRINT_SPACE _OUT << "\"" << "srcSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11379
11380 print_uint32_t(obj->srcBinding, "srcBinding", 1);
11381
11382 print_uint32_t(obj->srcArrayElement, "srcArrayElement", 1);
11383
11384 // CTS : required value
11385 PRINT_SPACE _OUT << "\"" << "dstSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11386
11387 print_uint32_t(obj->dstBinding, "dstBinding", 1);
11388
11389 print_uint32_t(obj->dstArrayElement, "dstArrayElement", 1);
11390
11391 print_uint32_t(obj->descriptorCount, "descriptorCount", 0);
11392
11393 INDENT(-4);
11394 PRINT_SPACE
11395 if (commaNeeded)
11396 _OUT << "}," << std::endl;
11397 else
11398 _OUT << "}" << std::endl;
11399 }
11400
print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj,const std::string & s,bool commaNeeded=true)11401 static void print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj, const std::string& s, bool commaNeeded=true) {
11402 PRINT_SPACE
11403 _OUT << "{" << std::endl;
11404 INDENT(4);
11405
11406 // CTS : required value
11407 PRINT_SPACE _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
11408
11409 print_VkDeviceSize(obj.offset, "offset", 1);
11410
11411 print_VkDeviceSize(obj.range, "range", 0);
11412
11413 INDENT(-4);
11414 PRINT_SPACE
11415 if (commaNeeded)
11416 _OUT << "}," << std::endl;
11417 else
11418 _OUT << "}" << std::endl;
11419 }
print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj,const std::string & s,bool commaNeeded=true)11420 static void print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj, const std::string& s, bool commaNeeded=true) {
11421 PRINT_SPACE
11422 _OUT << "{" << std::endl;
11423 INDENT(4);
11424
11425 // CTS : required value
11426 PRINT_SPACE _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
11427
11428 print_VkDeviceSize(obj->offset, "offset", 1);
11429
11430 print_VkDeviceSize(obj->range, "range", 0);
11431
11432 INDENT(-4);
11433 PRINT_SPACE
11434 if (commaNeeded)
11435 _OUT << "}," << std::endl;
11436 else
11437 _OUT << "}" << std::endl;
11438 }
11439
print_VkDescriptorImageInfo(VkDescriptorImageInfo obj,const std::string & s,bool commaNeeded=true)11440 static void print_VkDescriptorImageInfo(VkDescriptorImageInfo obj, const std::string& s, bool commaNeeded=true) {
11441 PRINT_SPACE
11442 _OUT << "{" << std::endl;
11443 INDENT(4);
11444
11445 // CTS : required value
11446 PRINT_SPACE _OUT << "\"" << "sampler" << "\"" << " : " << "\"" << "\"," << std::endl;
11447
11448 // CTS : required value
11449 PRINT_SPACE _OUT << "\"" << "imageView" << "\"" << " : " << "\"" << "\"," << std::endl;
11450
11451 print_VkImageLayout(obj.imageLayout, "imageLayout", 0);
11452
11453 INDENT(-4);
11454 PRINT_SPACE
11455 if (commaNeeded)
11456 _OUT << "}," << std::endl;
11457 else
11458 _OUT << "}" << std::endl;
11459 }
print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj,const std::string & s,bool commaNeeded=true)11460 static void print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj, const std::string& s, bool commaNeeded=true) {
11461 PRINT_SPACE
11462 _OUT << "{" << std::endl;
11463 INDENT(4);
11464
11465 // CTS : required value
11466 PRINT_SPACE _OUT << "\"" << "sampler" << "\"" << " : " << "\"" << "\"," << std::endl;
11467
11468 // CTS : required value
11469 PRINT_SPACE _OUT << "\"" << "imageView" << "\"" << " : " << "\"" << "\"," << std::endl;
11470
11471 print_VkImageLayout(obj->imageLayout, "imageLayout", 0);
11472
11473 INDENT(-4);
11474 PRINT_SPACE
11475 if (commaNeeded)
11476 _OUT << "}," << std::endl;
11477 else
11478 _OUT << "}" << std::endl;
11479 }
11480
print_VkDescriptorPoolSize(VkDescriptorPoolSize obj,const std::string & s,bool commaNeeded=true)11481 static void print_VkDescriptorPoolSize(VkDescriptorPoolSize obj, const std::string& s, bool commaNeeded=true) {
11482 PRINT_SPACE
11483 _OUT << "{" << std::endl;
11484 INDENT(4);
11485
11486 print_VkDescriptorType(obj.type, "type", 1);
11487
11488 print_uint32_t(obj.descriptorCount, "descriptorCount", 0);
11489
11490 INDENT(-4);
11491 PRINT_SPACE
11492 if (commaNeeded)
11493 _OUT << "}," << std::endl;
11494 else
11495 _OUT << "}" << std::endl;
11496 }
print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj,const std::string & s,bool commaNeeded=true)11497 static void print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj, const std::string& s, bool commaNeeded=true) {
11498 PRINT_SPACE
11499 _OUT << "{" << std::endl;
11500 INDENT(4);
11501
11502 print_VkDescriptorType(obj->type, "type", 1);
11503
11504 print_uint32_t(obj->descriptorCount, "descriptorCount", 0);
11505
11506 INDENT(-4);
11507 PRINT_SPACE
11508 if (commaNeeded)
11509 _OUT << "}," << std::endl;
11510 else
11511 _OUT << "}" << std::endl;
11512 }
11513
print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)11514 static void print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
11515 PRINT_SPACE
11516 _OUT << "{" << std::endl;
11517 INDENT(4);
11518
11519 print_VkStructureType(obj.sType, "sType", 1);
11520
11521 if (obj.pNext) {
11522 dumpPNextChain(obj.pNext);
11523 } else {
11524 PRINT_SPACE
11525 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11526 }
11527
11528 print_VkDescriptorPoolCreateFlags(obj.flags, "flags", 1);
11529
11530 print_uint32_t(obj.maxSets, "maxSets", 1);
11531
11532 print_uint32_t(obj.poolSizeCount, "poolSizeCount", 1);
11533
11534 PRINT_SPACE
11535 _OUT << "\"pPoolSizes\": " << std::endl;
11536 if (obj.pPoolSizes) {
11537 PRINT_SPACE
11538 _OUT << "[" << std::endl;
11539 for (unsigned int i = 0; i < obj.poolSizeCount; i++) {
11540 if (i+1 == obj.poolSizeCount)
11541 print_VkDescriptorPoolSize(obj.pPoolSizes[i], "pPoolSizes", 0);
11542 else
11543 print_VkDescriptorPoolSize(obj.pPoolSizes[i], "pPoolSizes", 1);
11544 }
11545 PRINT_SPACE
11546 _OUT << "]" << std::endl;
11547 }
11548 else
11549 {
11550 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11551 }
11552
11553 INDENT(-4);
11554 PRINT_SPACE
11555 if (commaNeeded)
11556 _OUT << "}," << std::endl;
11557 else
11558 _OUT << "}" << std::endl;
11559 }
print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)11560 static void print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
11561 PRINT_SPACE
11562 _OUT << "{" << std::endl;
11563 INDENT(4);
11564
11565 print_VkStructureType(obj->sType, "sType", 1);
11566
11567 if (obj->pNext) {
11568 dumpPNextChain(obj->pNext);
11569 } else {
11570 PRINT_SPACE
11571 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11572 }
11573
11574 print_VkDescriptorPoolCreateFlags(obj->flags, "flags", 1);
11575
11576 print_uint32_t(obj->maxSets, "maxSets", 1);
11577
11578 print_uint32_t(obj->poolSizeCount, "poolSizeCount", 1);
11579
11580 PRINT_SPACE
11581 _OUT << "\"pPoolSizes\": " << std::endl;
11582 if (obj->pPoolSizes) {
11583 PRINT_SPACE
11584 _OUT << "[" << std::endl;
11585 for (unsigned int i = 0; i < obj->poolSizeCount; i++) {
11586 if (i+1 == obj->poolSizeCount)
11587 print_VkDescriptorPoolSize(obj->pPoolSizes[i], "pPoolSizes", 0);
11588 else
11589 print_VkDescriptorPoolSize(obj->pPoolSizes[i], "pPoolSizes", 1);
11590 }
11591 PRINT_SPACE
11592 _OUT << "]" << std::endl;
11593 }
11594 else
11595 {
11596 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11597 }
11598
11599 INDENT(-4);
11600 PRINT_SPACE
11601 if (commaNeeded)
11602 _OUT << "}," << std::endl;
11603 else
11604 _OUT << "}" << std::endl;
11605 }
11606
print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj,const std::string & s,bool commaNeeded=true)11607 static void print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
11608 PRINT_SPACE
11609 _OUT << "{" << std::endl;
11610 INDENT(4);
11611
11612 print_VkStructureType(obj.sType, "sType", 1);
11613
11614 if (obj.pNext) {
11615 dumpPNextChain(obj.pNext);
11616 } else {
11617 PRINT_SPACE
11618 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11619 }
11620
11621 // CTS : required value
11622 PRINT_SPACE _OUT << "\"" << "descriptorPool" << "\"" << " : " << "\"" << "\"," << std::endl;
11623
11624 print_uint32_t(obj.descriptorSetCount, "descriptorSetCount", 1);
11625
11626 PRINT_SPACE
11627 _OUT << "\"pSetLayouts\":" << std::endl;
11628 PRINT_SPACE
11629 if (obj.pSetLayouts) {
11630 _OUT << "[" << std::endl;
11631 for (unsigned int i = 0; i < obj.descriptorSetCount; i++) {
11632 std:: stringstream tmp;
11633 tmp << "pSetLayouts" << "_" << i;
11634 bool isCommaNeeded = (i+1) != obj.descriptorSetCount;
11635 print_VkDescriptorSetLayout(obj.pSetLayouts[i], tmp.str(), isCommaNeeded);
11636 }
11637 PRINT_SPACE
11638 _OUT << "]" << "" << std::endl;
11639 } else {
11640 _OUT << "\"NULL\"" << "" << std::endl;
11641 }
11642
11643 INDENT(-4);
11644 PRINT_SPACE
11645 if (commaNeeded)
11646 _OUT << "}," << std::endl;
11647 else
11648 _OUT << "}" << std::endl;
11649 }
print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * obj,const std::string & s,bool commaNeeded=true)11650 static void print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
11651 PRINT_SPACE
11652 _OUT << "{" << std::endl;
11653 INDENT(4);
11654
11655 print_VkStructureType(obj->sType, "sType", 1);
11656
11657 if (obj->pNext) {
11658 dumpPNextChain(obj->pNext);
11659 } else {
11660 PRINT_SPACE
11661 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11662 }
11663
11664 // CTS : required value
11665 PRINT_SPACE _OUT << "\"" << "descriptorPool" << "\"" << " : " << "\"" << "\"," << std::endl;
11666
11667 print_uint32_t(obj->descriptorSetCount, "descriptorSetCount", 1);
11668
11669 PRINT_SPACE
11670 _OUT << "\"pSetLayouts\":" << std::endl;
11671 PRINT_SPACE
11672 if (obj->pSetLayouts) {
11673 _OUT << "[" << std::endl;
11674 for (unsigned int i = 0; i < obj->descriptorSetCount; i++) {
11675 std:: stringstream tmp;
11676 tmp << "pSetLayouts" << "_" << i;
11677 bool isCommaNeeded = (i+1) != obj->descriptorSetCount;
11678 print_VkDescriptorSetLayout(obj->pSetLayouts[i], tmp.str(), isCommaNeeded);
11679 }
11680 PRINT_SPACE
11681 _OUT << "]" << "" << std::endl;
11682 } else {
11683 _OUT << "\"NULL\"" << "" << std::endl;
11684 }
11685
11686 INDENT(-4);
11687 PRINT_SPACE
11688 if (commaNeeded)
11689 _OUT << "}," << std::endl;
11690 else
11691 _OUT << "}" << std::endl;
11692 }
11693
print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj,const std::string & s,bool commaNeeded=true)11694 static void print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj, const std::string& s, bool commaNeeded=true) {
11695 PRINT_SPACE
11696 _OUT << "{" << std::endl;
11697 INDENT(4);
11698
11699 print_uint32_t(obj.binding, "binding", 1);
11700
11701 print_VkDescriptorType(obj.descriptorType, "descriptorType", 1);
11702
11703 print_uint32_t(obj.descriptorCount, "descriptorCount", 1);
11704
11705 print_VkShaderStageFlags(obj.stageFlags, "stageFlags", 1);
11706
11707 PRINT_SPACE
11708 _OUT << "\"pImmutableSamplers\":" << std::endl;
11709 PRINT_SPACE
11710 if (obj.pImmutableSamplers) {
11711 _OUT << "[" << std::endl;
11712 for (unsigned int i = 0; i < obj.descriptorCount; i++) {
11713 bool isCommaNeeded = (i+1) != obj.descriptorCount;
11714 if (isCommaNeeded)
11715 {
11716 PRINT_SPACE
11717 _OUT << obj.pImmutableSamplers[i].getInternal() << "," << std::endl;
11718 }
11719 else
11720 {
11721 PRINT_SPACE
11722 _OUT << obj.pImmutableSamplers[i].getInternal() << std::endl;
11723 }
11724 }
11725 PRINT_SPACE
11726 _OUT << "]" << "" << std::endl;
11727 } else {
11728 _OUT << "\"NULL\"" << "" << std::endl;
11729 }
11730
11731 INDENT(-4);
11732 PRINT_SPACE
11733 if (commaNeeded)
11734 _OUT << "}," << std::endl;
11735 else
11736 _OUT << "}" << std::endl;
11737 }
print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * obj,const std::string & s,bool commaNeeded=true)11738 static void print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * obj, const std::string& s, bool commaNeeded=true) {
11739 PRINT_SPACE
11740 _OUT << "{" << std::endl;
11741 INDENT(4);
11742
11743 print_uint32_t(obj->binding, "binding", 1);
11744
11745 print_VkDescriptorType(obj->descriptorType, "descriptorType", 1);
11746
11747 print_uint32_t(obj->descriptorCount, "descriptorCount", 1);
11748
11749 print_VkShaderStageFlags(obj->stageFlags, "stageFlags", 1);
11750
11751 PRINT_SPACE
11752 _OUT << "\"pImmutableSamplers\":" << std::endl;
11753 PRINT_SPACE
11754 if (obj->pImmutableSamplers) {
11755 _OUT << "[" << std::endl;
11756 for (unsigned int i = 0; i < obj->descriptorCount; i++) {
11757 bool isCommaNeeded = (i+1) != obj->descriptorCount;
11758 if (isCommaNeeded)
11759 {
11760 PRINT_SPACE
11761 _OUT << obj->pImmutableSamplers[i].getInternal() << "," << std::endl;
11762 }
11763 else
11764 {
11765 PRINT_SPACE
11766 _OUT << obj->pImmutableSamplers[i].getInternal() << std::endl;
11767 }
11768 }
11769 PRINT_SPACE
11770 _OUT << "]" << "" << std::endl;
11771 } else {
11772 _OUT << "\"NULL\"" << "" << std::endl;
11773 }
11774
11775 INDENT(-4);
11776 PRINT_SPACE
11777 if (commaNeeded)
11778 _OUT << "}," << std::endl;
11779 else
11780 _OUT << "}" << std::endl;
11781 }
11782
print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj,const std::string & s,bool commaNeeded=true)11783 static void print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj, const std::string& s, bool commaNeeded=true) {
11784 PRINT_SPACE
11785 _OUT << "{" << std::endl;
11786 INDENT(4);
11787
11788 print_VkStructureType(obj.sType, "sType", 1);
11789
11790 if (obj.pNext) {
11791 dumpPNextChain(obj.pNext);
11792 } else {
11793 PRINT_SPACE
11794 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11795 }
11796
11797 print_VkDescriptorSetLayoutCreateFlags(obj.flags, "flags", 1);
11798
11799 print_uint32_t(obj.bindingCount, "bindingCount", 1);
11800
11801 PRINT_SPACE
11802 _OUT << "\"pBindings\": " << std::endl;
11803 if (obj.pBindings) {
11804 PRINT_SPACE
11805 _OUT << "[" << std::endl;
11806 for (unsigned int i = 0; i < obj.bindingCount; i++) {
11807 if (i+1 == obj.bindingCount)
11808 print_VkDescriptorSetLayoutBinding(obj.pBindings[i], "pBindings", 0);
11809 else
11810 print_VkDescriptorSetLayoutBinding(obj.pBindings[i], "pBindings", 1);
11811 }
11812 PRINT_SPACE
11813 _OUT << "]" << std::endl;
11814 }
11815 else
11816 {
11817 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11818 }
11819
11820 INDENT(-4);
11821 PRINT_SPACE
11822 if (commaNeeded)
11823 _OUT << "}," << std::endl;
11824 else
11825 _OUT << "}" << std::endl;
11826 }
print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * obj,const std::string & s,bool commaNeeded=true)11827 static void print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
11828 PRINT_SPACE
11829 _OUT << "{" << std::endl;
11830 INDENT(4);
11831
11832 print_VkStructureType(obj->sType, "sType", 1);
11833
11834 if (obj->pNext) {
11835 dumpPNextChain(obj->pNext);
11836 } else {
11837 PRINT_SPACE
11838 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11839 }
11840
11841 print_VkDescriptorSetLayoutCreateFlags(obj->flags, "flags", 1);
11842
11843 print_uint32_t(obj->bindingCount, "bindingCount", 1);
11844
11845 PRINT_SPACE
11846 _OUT << "\"pBindings\": " << std::endl;
11847 if (obj->pBindings) {
11848 PRINT_SPACE
11849 _OUT << "[" << std::endl;
11850 for (unsigned int i = 0; i < obj->bindingCount; i++) {
11851 if (i+1 == obj->bindingCount)
11852 print_VkDescriptorSetLayoutBinding(obj->pBindings[i], "pBindings", 0);
11853 else
11854 print_VkDescriptorSetLayoutBinding(obj->pBindings[i], "pBindings", 1);
11855 }
11856 PRINT_SPACE
11857 _OUT << "]" << std::endl;
11858 }
11859 else
11860 {
11861 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11862 }
11863
11864 INDENT(-4);
11865 PRINT_SPACE
11866 if (commaNeeded)
11867 _OUT << "}," << std::endl;
11868 else
11869 _OUT << "}" << std::endl;
11870 }
11871
print_VkWriteDescriptorSet(VkWriteDescriptorSet obj,const std::string & s,bool commaNeeded=true)11872 static void print_VkWriteDescriptorSet(VkWriteDescriptorSet obj, const std::string& s, bool commaNeeded=true) {
11873 PRINT_SPACE
11874 _OUT << "{" << std::endl;
11875 INDENT(4);
11876
11877 print_VkStructureType(obj.sType, "sType", 1);
11878
11879 if (obj.pNext) {
11880 dumpPNextChain(obj.pNext);
11881 } else {
11882 PRINT_SPACE
11883 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11884 }
11885
11886 // CTS : required value
11887 PRINT_SPACE _OUT << "\"" << "dstSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11888
11889 print_uint32_t(obj.dstBinding, "dstBinding", 1);
11890
11891 print_uint32_t(obj.dstArrayElement, "dstArrayElement", 1);
11892
11893 print_uint32_t(obj.descriptorCount, "descriptorCount", 1);
11894
11895 print_VkDescriptorType(obj.descriptorType, "descriptorType", 1);
11896
11897 PRINT_SPACE
11898 _OUT << "\"pImageInfo\": " << std::endl;
11899 if (obj.pImageInfo) {
11900 PRINT_SPACE
11901 _OUT << "[" << std::endl;
11902 for (unsigned int i = 0; i < obj.descriptorCount; i++) {
11903 if (i+1 == obj.descriptorCount)
11904 print_VkDescriptorImageInfo(obj.pImageInfo[i], "pImageInfo", 0);
11905 else
11906 print_VkDescriptorImageInfo(obj.pImageInfo[i], "pImageInfo", 1);
11907 }
11908 PRINT_SPACE
11909 _OUT << "]," << std::endl;
11910 }
11911 else
11912 {
11913 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
11914 }
11915
11916 PRINT_SPACE
11917 _OUT << "\"pBufferInfo\": " << std::endl;
11918 if (obj.pBufferInfo) {
11919 PRINT_SPACE
11920 _OUT << "[" << std::endl;
11921 for (unsigned int i = 0; i < obj.descriptorCount; i++) {
11922 if (i+1 == obj.descriptorCount)
11923 print_VkDescriptorBufferInfo(obj.pBufferInfo[i], "pBufferInfo", 0);
11924 else
11925 print_VkDescriptorBufferInfo(obj.pBufferInfo[i], "pBufferInfo", 1);
11926 }
11927 PRINT_SPACE
11928 _OUT << "]," << std::endl;
11929 }
11930 else
11931 {
11932 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
11933 }
11934
11935 PRINT_SPACE
11936 _OUT << "\"pTexelBufferView\":" << std::endl;
11937 PRINT_SPACE
11938 if (obj.pTexelBufferView) {
11939 _OUT << "[" << std::endl;
11940 for (unsigned int i = 0; i < obj.descriptorCount; i++) {
11941 std:: stringstream tmp;
11942 tmp << "pTexelBufferView" << "_" << i;
11943 bool isCommaNeeded = (i+1) != obj.descriptorCount;
11944 print_VkBufferView(obj.pTexelBufferView[i], tmp.str(), isCommaNeeded);
11945 }
11946 PRINT_SPACE
11947 _OUT << "]" << "" << std::endl;
11948 } else {
11949 _OUT << "\"NULL\"" << "" << std::endl;
11950 }
11951
11952 INDENT(-4);
11953 PRINT_SPACE
11954 if (commaNeeded)
11955 _OUT << "}," << std::endl;
11956 else
11957 _OUT << "}" << std::endl;
11958 }
print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj,const std::string & s,bool commaNeeded=true)11959 static void print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj, const std::string& s, bool commaNeeded=true) {
11960 PRINT_SPACE
11961 _OUT << "{" << std::endl;
11962 INDENT(4);
11963
11964 print_VkStructureType(obj->sType, "sType", 1);
11965
11966 if (obj->pNext) {
11967 dumpPNextChain(obj->pNext);
11968 } else {
11969 PRINT_SPACE
11970 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11971 }
11972
11973 // CTS : required value
11974 PRINT_SPACE _OUT << "\"" << "dstSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11975
11976 print_uint32_t(obj->dstBinding, "dstBinding", 1);
11977
11978 print_uint32_t(obj->dstArrayElement, "dstArrayElement", 1);
11979
11980 print_uint32_t(obj->descriptorCount, "descriptorCount", 1);
11981
11982 print_VkDescriptorType(obj->descriptorType, "descriptorType", 1);
11983
11984 PRINT_SPACE
11985 _OUT << "\"pImageInfo\": " << std::endl;
11986 if (obj->pImageInfo) {
11987 PRINT_SPACE
11988 _OUT << "[" << std::endl;
11989 for (unsigned int i = 0; i < obj->descriptorCount; i++) {
11990 if (i+1 == obj->descriptorCount)
11991 print_VkDescriptorImageInfo(obj->pImageInfo[i], "pImageInfo", 0);
11992 else
11993 print_VkDescriptorImageInfo(obj->pImageInfo[i], "pImageInfo", 1);
11994 }
11995 PRINT_SPACE
11996 _OUT << "]," << std::endl;
11997 }
11998 else
11999 {
12000 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12001 }
12002
12003 PRINT_SPACE
12004 _OUT << "\"pBufferInfo\": " << std::endl;
12005 if (obj->pBufferInfo) {
12006 PRINT_SPACE
12007 _OUT << "[" << std::endl;
12008 for (unsigned int i = 0; i < obj->descriptorCount; i++) {
12009 if (i+1 == obj->descriptorCount)
12010 print_VkDescriptorBufferInfo(obj->pBufferInfo[i], "pBufferInfo", 0);
12011 else
12012 print_VkDescriptorBufferInfo(obj->pBufferInfo[i], "pBufferInfo", 1);
12013 }
12014 PRINT_SPACE
12015 _OUT << "]," << std::endl;
12016 }
12017 else
12018 {
12019 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12020 }
12021
12022 PRINT_SPACE
12023 _OUT << "\"pTexelBufferView\":" << std::endl;
12024 PRINT_SPACE
12025 if (obj->pTexelBufferView) {
12026 _OUT << "[" << std::endl;
12027 for (unsigned int i = 0; i < obj->descriptorCount; i++) {
12028 std:: stringstream tmp;
12029 tmp << "pTexelBufferView" << "_" << i;
12030 bool isCommaNeeded = (i+1) != obj->descriptorCount;
12031 print_VkBufferView(obj->pTexelBufferView[i], tmp.str(), isCommaNeeded);
12032 }
12033 PRINT_SPACE
12034 _OUT << "]" << "" << std::endl;
12035 } else {
12036 _OUT << "\"NULL\"" << "" << std::endl;
12037 }
12038
12039 INDENT(-4);
12040 PRINT_SPACE
12041 if (commaNeeded)
12042 _OUT << "}," << std::endl;
12043 else
12044 _OUT << "}" << std::endl;
12045 }
12046
print_VkAttachmentDescription(VkAttachmentDescription obj,const std::string & s,bool commaNeeded=true)12047 static void print_VkAttachmentDescription(VkAttachmentDescription obj, const std::string& s, bool commaNeeded=true) {
12048 PRINT_SPACE
12049 _OUT << "{" << std::endl;
12050 INDENT(4);
12051
12052 print_VkAttachmentDescriptionFlags(obj.flags, "flags", 1);
12053
12054 print_VkFormat(obj.format, "format", 1);
12055
12056 print_VkSampleCountFlagBits(obj.samples, "samples", 1);
12057
12058 print_VkAttachmentLoadOp(obj.loadOp, "loadOp", 1);
12059
12060 print_VkAttachmentStoreOp(obj.storeOp, "storeOp", 1);
12061
12062 print_VkAttachmentLoadOp(obj.stencilLoadOp, "stencilLoadOp", 1);
12063
12064 print_VkAttachmentStoreOp(obj.stencilStoreOp, "stencilStoreOp", 1);
12065
12066 print_VkImageLayout(obj.initialLayout, "initialLayout", 1);
12067
12068 print_VkImageLayout(obj.finalLayout, "finalLayout", 0);
12069
12070 INDENT(-4);
12071 PRINT_SPACE
12072 if (commaNeeded)
12073 _OUT << "}," << std::endl;
12074 else
12075 _OUT << "}" << std::endl;
12076 }
print_VkAttachmentDescription(const VkAttachmentDescription * obj,const std::string & s,bool commaNeeded=true)12077 static void print_VkAttachmentDescription(const VkAttachmentDescription * obj, const std::string& s, bool commaNeeded=true) {
12078 PRINT_SPACE
12079 _OUT << "{" << std::endl;
12080 INDENT(4);
12081
12082 print_VkAttachmentDescriptionFlags(obj->flags, "flags", 1);
12083
12084 print_VkFormat(obj->format, "format", 1);
12085
12086 print_VkSampleCountFlagBits(obj->samples, "samples", 1);
12087
12088 print_VkAttachmentLoadOp(obj->loadOp, "loadOp", 1);
12089
12090 print_VkAttachmentStoreOp(obj->storeOp, "storeOp", 1);
12091
12092 print_VkAttachmentLoadOp(obj->stencilLoadOp, "stencilLoadOp", 1);
12093
12094 print_VkAttachmentStoreOp(obj->stencilStoreOp, "stencilStoreOp", 1);
12095
12096 print_VkImageLayout(obj->initialLayout, "initialLayout", 1);
12097
12098 print_VkImageLayout(obj->finalLayout, "finalLayout", 0);
12099
12100 INDENT(-4);
12101 PRINT_SPACE
12102 if (commaNeeded)
12103 _OUT << "}," << std::endl;
12104 else
12105 _OUT << "}" << std::endl;
12106 }
12107
print_VkAttachmentReference(VkAttachmentReference obj,const std::string & s,bool commaNeeded=true)12108 static void print_VkAttachmentReference(VkAttachmentReference obj, const std::string& s, bool commaNeeded=true) {
12109 PRINT_SPACE
12110 _OUT << "{" << std::endl;
12111 INDENT(4);
12112
12113 print_uint32_t(obj.attachment, "attachment", 1);
12114
12115 print_VkImageLayout(obj.layout, "layout", 0);
12116
12117 INDENT(-4);
12118 PRINT_SPACE
12119 if (commaNeeded)
12120 _OUT << "}," << std::endl;
12121 else
12122 _OUT << "}" << std::endl;
12123 }
print_VkAttachmentReference(const VkAttachmentReference * obj,const std::string & s,bool commaNeeded=true)12124 static void print_VkAttachmentReference(const VkAttachmentReference * obj, const std::string& s, bool commaNeeded=true) {
12125 PRINT_SPACE
12126 _OUT << "{" << std::endl;
12127 INDENT(4);
12128
12129 print_uint32_t(obj->attachment, "attachment", 1);
12130
12131 print_VkImageLayout(obj->layout, "layout", 0);
12132
12133 INDENT(-4);
12134 PRINT_SPACE
12135 if (commaNeeded)
12136 _OUT << "}," << std::endl;
12137 else
12138 _OUT << "}" << std::endl;
12139 }
12140
print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj,const std::string & s,bool commaNeeded=true)12141 static void print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj, const std::string& s, bool commaNeeded=true) {
12142 PRINT_SPACE
12143 _OUT << "{" << std::endl;
12144 INDENT(4);
12145
12146 print_VkStructureType(obj.sType, "sType", 1);
12147
12148 if (obj.pNext) {
12149 dumpPNextChain(obj.pNext);
12150 } else {
12151 PRINT_SPACE
12152 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12153 }
12154
12155 print_VkFramebufferCreateFlags(obj.flags, "flags", 1);
12156
12157 // CTS : required value
12158 PRINT_SPACE _OUT << "\"" << "renderPass" << "\"" << " : " << obj.renderPass.getInternal() << "," << std::endl;
12159
12160 print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
12161
12162 PRINT_SPACE
12163 _OUT << "\"pAttachments\":" << std::endl;
12164 PRINT_SPACE
12165 if (obj.pAttachments) {
12166 _OUT << "[" << std::endl;
12167 for (unsigned int i = 0; i < obj.attachmentCount; i++) {
12168 std:: stringstream tmp;
12169 tmp << "pAttachments" << "_" << i;
12170 bool isCommaNeeded = (i+1) != obj.attachmentCount;
12171 print_VkImageView(obj.pAttachments[i], tmp.str(), isCommaNeeded);
12172 }
12173 PRINT_SPACE
12174 _OUT << "]" << "," << std::endl;
12175 } else {
12176 _OUT << "\"NULL\"" << "," << std::endl;
12177 }
12178
12179 print_uint32_t(obj.width, "width", 1);
12180
12181 print_uint32_t(obj.height, "height", 1);
12182
12183 print_uint32_t(obj.layers, "layers", 0);
12184
12185 INDENT(-4);
12186 PRINT_SPACE
12187 if (commaNeeded)
12188 _OUT << "}," << std::endl;
12189 else
12190 _OUT << "}" << std::endl;
12191 }
print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj,const std::string & s,bool commaNeeded=true)12192 static void print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
12193 PRINT_SPACE
12194 _OUT << "{" << std::endl;
12195 INDENT(4);
12196
12197 print_VkStructureType(obj->sType, "sType", 1);
12198
12199 if (obj->pNext) {
12200 dumpPNextChain(obj->pNext);
12201 } else {
12202 PRINT_SPACE
12203 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12204 }
12205
12206 print_VkFramebufferCreateFlags(obj->flags, "flags", 1);
12207
12208 // CTS : required value
12209 PRINT_SPACE _OUT << "\"" << "renderPass" << "\"" << " : " << obj->renderPass.getInternal() << "," << std::endl;
12210
12211 print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
12212
12213 PRINT_SPACE
12214 _OUT << "\"pAttachments\":" << std::endl;
12215 PRINT_SPACE
12216 if (obj->pAttachments) {
12217 _OUT << "[" << std::endl;
12218 for (unsigned int i = 0; i < obj->attachmentCount; i++) {
12219 std:: stringstream tmp;
12220 tmp << "pAttachments" << "_" << i;
12221 bool isCommaNeeded = (i+1) != obj->attachmentCount;
12222 print_VkImageView(obj->pAttachments[i], tmp.str(), isCommaNeeded);
12223 }
12224 PRINT_SPACE
12225 _OUT << "]" << "," << std::endl;
12226 } else {
12227 _OUT << "\"NULL\"" << "," << std::endl;
12228 }
12229
12230 print_uint32_t(obj->width, "width", 1);
12231
12232 print_uint32_t(obj->height, "height", 1);
12233
12234 print_uint32_t(obj->layers, "layers", 0);
12235
12236 INDENT(-4);
12237 PRINT_SPACE
12238 if (commaNeeded)
12239 _OUT << "}," << std::endl;
12240 else
12241 _OUT << "}" << std::endl;
12242 }
12243
print_VkSubpassDescription(VkSubpassDescription obj,const std::string & s,bool commaNeeded=true)12244 static void print_VkSubpassDescription(VkSubpassDescription obj, const std::string& s, bool commaNeeded=true) {
12245 PRINT_SPACE
12246 _OUT << "{" << std::endl;
12247 INDENT(4);
12248
12249 print_VkSubpassDescriptionFlags(obj.flags, "flags", 1);
12250
12251 print_VkPipelineBindPoint(obj.pipelineBindPoint, "pipelineBindPoint", 1);
12252
12253 print_uint32_t(obj.inputAttachmentCount, "inputAttachmentCount", 1);
12254
12255 PRINT_SPACE
12256 _OUT << "\"pInputAttachments\": " << std::endl;
12257 if (obj.pInputAttachments) {
12258 PRINT_SPACE
12259 _OUT << "[" << std::endl;
12260 for (unsigned int i = 0; i < obj.inputAttachmentCount; i++) {
12261 if (i+1 == obj.inputAttachmentCount)
12262 print_VkAttachmentReference(obj.pInputAttachments[i], "pInputAttachments", 0);
12263 else
12264 print_VkAttachmentReference(obj.pInputAttachments[i], "pInputAttachments", 1);
12265 }
12266 PRINT_SPACE
12267 _OUT << "]," << std::endl;
12268 }
12269 else
12270 {
12271 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12272 }
12273
12274 print_uint32_t(obj.colorAttachmentCount, "colorAttachmentCount", 1);
12275
12276 PRINT_SPACE
12277 _OUT << "\"pColorAttachments\": " << std::endl;
12278 if (obj.pColorAttachments) {
12279 PRINT_SPACE
12280 _OUT << "[" << std::endl;
12281 for (unsigned int i = 0; i < obj.colorAttachmentCount; i++) {
12282 if (i+1 == obj.colorAttachmentCount)
12283 print_VkAttachmentReference(obj.pColorAttachments[i], "pColorAttachments", 0);
12284 else
12285 print_VkAttachmentReference(obj.pColorAttachments[i], "pColorAttachments", 1);
12286 }
12287 PRINT_SPACE
12288 _OUT << "]," << std::endl;
12289 }
12290 else
12291 {
12292 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12293 }
12294
12295 PRINT_SPACE
12296 _OUT << "\"pResolveAttachments\": " << std::endl;
12297 if (obj.pResolveAttachments) {
12298 PRINT_SPACE
12299 _OUT << "[" << std::endl;
12300 for (unsigned int i = 0; i < obj.colorAttachmentCount; i++) {
12301 if (i+1 == obj.colorAttachmentCount)
12302 print_VkAttachmentReference(obj.pResolveAttachments[i], "pResolveAttachments", 0);
12303 else
12304 print_VkAttachmentReference(obj.pResolveAttachments[i], "pResolveAttachments", 1);
12305 }
12306 PRINT_SPACE
12307 _OUT << "]," << std::endl;
12308 }
12309 else
12310 {
12311 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12312 }
12313
12314 PRINT_SPACE
12315 _OUT << "\"pDepthStencilAttachment\": " << std::endl;
12316 if (obj.pDepthStencilAttachment) {
12317 print_VkAttachmentReference(obj.pDepthStencilAttachment, "pDepthStencilAttachment", 1);
12318 }
12319 else
12320 {
12321 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12322 }
12323
12324 print_uint32_t(obj.preserveAttachmentCount, "preserveAttachmentCount", 1);
12325
12326 PRINT_SPACE
12327 _OUT << "\"pPreserveAttachments\":" << std::endl;
12328 PRINT_SPACE
12329 if (obj.pPreserveAttachments) {
12330 _OUT << "[" << std::endl;
12331 for (unsigned int i = 0; i < obj.preserveAttachmentCount; i++) {
12332 bool isCommaNeeded = (i+1) != obj.preserveAttachmentCount;
12333 print_uint32_t(obj.pPreserveAttachments[i], "", isCommaNeeded);
12334 }
12335 PRINT_SPACE
12336 _OUT << "]" << "" << std::endl;
12337 } else {
12338 _OUT << "\"NULL\"" << "" << std::endl;
12339 }
12340
12341 INDENT(-4);
12342 PRINT_SPACE
12343 if (commaNeeded)
12344 _OUT << "}," << std::endl;
12345 else
12346 _OUT << "}" << std::endl;
12347 }
print_VkSubpassDescription(const VkSubpassDescription * obj,const std::string & s,bool commaNeeded=true)12348 static void print_VkSubpassDescription(const VkSubpassDescription * obj, const std::string& s, bool commaNeeded=true) {
12349 PRINT_SPACE
12350 _OUT << "{" << std::endl;
12351 INDENT(4);
12352
12353 print_VkSubpassDescriptionFlags(obj->flags, "flags", 1);
12354
12355 print_VkPipelineBindPoint(obj->pipelineBindPoint, "pipelineBindPoint", 1);
12356
12357 print_uint32_t(obj->inputAttachmentCount, "inputAttachmentCount", 1);
12358
12359 PRINT_SPACE
12360 _OUT << "\"pInputAttachments\": " << std::endl;
12361 if (obj->pInputAttachments) {
12362 PRINT_SPACE
12363 _OUT << "[" << std::endl;
12364 for (unsigned int i = 0; i < obj->inputAttachmentCount; i++) {
12365 if (i+1 == obj->inputAttachmentCount)
12366 print_VkAttachmentReference(obj->pInputAttachments[i], "pInputAttachments", 0);
12367 else
12368 print_VkAttachmentReference(obj->pInputAttachments[i], "pInputAttachments", 1);
12369 }
12370 PRINT_SPACE
12371 _OUT << "]," << std::endl;
12372 }
12373 else
12374 {
12375 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12376 }
12377
12378 print_uint32_t(obj->colorAttachmentCount, "colorAttachmentCount", 1);
12379
12380 PRINT_SPACE
12381 _OUT << "\"pColorAttachments\": " << std::endl;
12382 if (obj->pColorAttachments) {
12383 PRINT_SPACE
12384 _OUT << "[" << std::endl;
12385 for (unsigned int i = 0; i < obj->colorAttachmentCount; i++) {
12386 if (i+1 == obj->colorAttachmentCount)
12387 print_VkAttachmentReference(obj->pColorAttachments[i], "pColorAttachments", 0);
12388 else
12389 print_VkAttachmentReference(obj->pColorAttachments[i], "pColorAttachments", 1);
12390 }
12391 PRINT_SPACE
12392 _OUT << "]," << std::endl;
12393 }
12394 else
12395 {
12396 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12397 }
12398
12399 PRINT_SPACE
12400 _OUT << "\"pResolveAttachments\": " << std::endl;
12401 if (obj->pResolveAttachments) {
12402 PRINT_SPACE
12403 _OUT << "[" << std::endl;
12404 for (unsigned int i = 0; i < obj->colorAttachmentCount; i++) {
12405 if (i+1 == obj->colorAttachmentCount)
12406 print_VkAttachmentReference(obj->pResolveAttachments[i], "pResolveAttachments", 0);
12407 else
12408 print_VkAttachmentReference(obj->pResolveAttachments[i], "pResolveAttachments", 1);
12409 }
12410 PRINT_SPACE
12411 _OUT << "]," << std::endl;
12412 }
12413 else
12414 {
12415 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12416 }
12417
12418 PRINT_SPACE
12419 _OUT << "\"pDepthStencilAttachment\": " << std::endl;
12420 if (obj->pDepthStencilAttachment) {
12421 print_VkAttachmentReference(obj->pDepthStencilAttachment, "pDepthStencilAttachment", 1);
12422 }
12423 else
12424 {
12425 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12426 }
12427
12428 print_uint32_t(obj->preserveAttachmentCount, "preserveAttachmentCount", 1);
12429
12430 PRINT_SPACE
12431 _OUT << "\"pPreserveAttachments\":" << std::endl;
12432 PRINT_SPACE
12433 if (obj->pPreserveAttachments) {
12434 _OUT << "[" << std::endl;
12435 for (unsigned int i = 0; i < obj->preserveAttachmentCount; i++) {
12436 bool isCommaNeeded = (i+1) != obj->preserveAttachmentCount;
12437 print_uint32_t(obj->pPreserveAttachments[i], "", isCommaNeeded);
12438 }
12439 PRINT_SPACE
12440 _OUT << "]" << "" << std::endl;
12441 } else {
12442 _OUT << "\"NULL\"" << "" << std::endl;
12443 }
12444
12445 INDENT(-4);
12446 PRINT_SPACE
12447 if (commaNeeded)
12448 _OUT << "}," << std::endl;
12449 else
12450 _OUT << "}" << std::endl;
12451 }
12452
print_VkSubpassDependency(VkSubpassDependency obj,const std::string & s,bool commaNeeded=true)12453 static void print_VkSubpassDependency(VkSubpassDependency obj, const std::string& s, bool commaNeeded=true) {
12454 PRINT_SPACE
12455 _OUT << "{" << std::endl;
12456 INDENT(4);
12457
12458 print_uint32_t(obj.srcSubpass, "srcSubpass", 1);
12459
12460 print_uint32_t(obj.dstSubpass, "dstSubpass", 1);
12461
12462 print_VkPipelineStageFlags(obj.srcStageMask, "srcStageMask", 1);
12463
12464 print_VkPipelineStageFlags(obj.dstStageMask, "dstStageMask", 1);
12465
12466 print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
12467
12468 print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
12469
12470 print_VkDependencyFlags(obj.dependencyFlags, "dependencyFlags", 0);
12471
12472 INDENT(-4);
12473 PRINT_SPACE
12474 if (commaNeeded)
12475 _OUT << "}," << std::endl;
12476 else
12477 _OUT << "}" << std::endl;
12478 }
print_VkSubpassDependency(const VkSubpassDependency * obj,const std::string & s,bool commaNeeded=true)12479 static void print_VkSubpassDependency(const VkSubpassDependency * obj, const std::string& s, bool commaNeeded=true) {
12480 PRINT_SPACE
12481 _OUT << "{" << std::endl;
12482 INDENT(4);
12483
12484 print_uint32_t(obj->srcSubpass, "srcSubpass", 1);
12485
12486 print_uint32_t(obj->dstSubpass, "dstSubpass", 1);
12487
12488 print_VkPipelineStageFlags(obj->srcStageMask, "srcStageMask", 1);
12489
12490 print_VkPipelineStageFlags(obj->dstStageMask, "dstStageMask", 1);
12491
12492 print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
12493
12494 print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
12495
12496 print_VkDependencyFlags(obj->dependencyFlags, "dependencyFlags", 0);
12497
12498 INDENT(-4);
12499 PRINT_SPACE
12500 if (commaNeeded)
12501 _OUT << "}," << std::endl;
12502 else
12503 _OUT << "}" << std::endl;
12504 }
12505
print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj,const std::string & s,bool commaNeeded=true)12506 static void print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj, const std::string& s, bool commaNeeded=true) {
12507 PRINT_SPACE
12508 _OUT << "{" << std::endl;
12509 INDENT(4);
12510
12511 print_VkStructureType(obj.sType, "sType", 1);
12512
12513 if (obj.pNext) {
12514 dumpPNextChain(obj.pNext);
12515 } else {
12516 PRINT_SPACE
12517 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12518 }
12519
12520 print_VkRenderPassCreateFlags(obj.flags, "flags", 1);
12521
12522 print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
12523
12524 PRINT_SPACE
12525 _OUT << "\"pAttachments\": " << std::endl;
12526 if (obj.pAttachments) {
12527 PRINT_SPACE
12528 _OUT << "[" << std::endl;
12529 for (unsigned int i = 0; i < obj.attachmentCount; i++) {
12530 if (i+1 == obj.attachmentCount)
12531 print_VkAttachmentDescription(obj.pAttachments[i], "pAttachments", 0);
12532 else
12533 print_VkAttachmentDescription(obj.pAttachments[i], "pAttachments", 1);
12534 }
12535 PRINT_SPACE
12536 _OUT << "]," << std::endl;
12537 }
12538 else
12539 {
12540 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12541 }
12542
12543 print_uint32_t(obj.subpassCount, "subpassCount", 1);
12544
12545 PRINT_SPACE
12546 _OUT << "\"pSubpasses\": " << std::endl;
12547 if (obj.pSubpasses) {
12548 PRINT_SPACE
12549 _OUT << "[" << std::endl;
12550 for (unsigned int i = 0; i < obj.subpassCount; i++) {
12551 if (i+1 == obj.subpassCount)
12552 print_VkSubpassDescription(obj.pSubpasses[i], "pSubpasses", 0);
12553 else
12554 print_VkSubpassDescription(obj.pSubpasses[i], "pSubpasses", 1);
12555 }
12556 PRINT_SPACE
12557 _OUT << "]," << std::endl;
12558 }
12559 else
12560 {
12561 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12562 }
12563
12564 print_uint32_t(obj.dependencyCount, "dependencyCount", 1);
12565
12566 PRINT_SPACE
12567 _OUT << "\"pDependencies\": " << std::endl;
12568 if (obj.pDependencies) {
12569 PRINT_SPACE
12570 _OUT << "[" << std::endl;
12571 for (unsigned int i = 0; i < obj.dependencyCount; i++) {
12572 if (i+1 == obj.dependencyCount)
12573 print_VkSubpassDependency(obj.pDependencies[i], "pDependencies", 0);
12574 else
12575 print_VkSubpassDependency(obj.pDependencies[i], "pDependencies", 1);
12576 }
12577 PRINT_SPACE
12578 _OUT << "]" << std::endl;
12579 }
12580 else
12581 {
12582 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
12583 }
12584
12585 INDENT(-4);
12586 PRINT_SPACE
12587 if (commaNeeded)
12588 _OUT << "}," << std::endl;
12589 else
12590 _OUT << "}" << std::endl;
12591 }
print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj,const std::string & s,bool commaNeeded=true)12592 static void print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
12593 PRINT_SPACE
12594 _OUT << "{" << std::endl;
12595 INDENT(4);
12596
12597 print_VkStructureType(obj->sType, "sType", 1);
12598
12599 if (obj->pNext) {
12600 dumpPNextChain(obj->pNext);
12601 } else {
12602 PRINT_SPACE
12603 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12604 }
12605
12606 print_VkRenderPassCreateFlags(obj->flags, "flags", 1);
12607
12608 print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
12609
12610 PRINT_SPACE
12611 _OUT << "\"pAttachments\": " << std::endl;
12612 if (obj->pAttachments) {
12613 PRINT_SPACE
12614 _OUT << "[" << std::endl;
12615 for (unsigned int i = 0; i < obj->attachmentCount; i++) {
12616 if (i+1 == obj->attachmentCount)
12617 print_VkAttachmentDescription(obj->pAttachments[i], "pAttachments", 0);
12618 else
12619 print_VkAttachmentDescription(obj->pAttachments[i], "pAttachments", 1);
12620 }
12621 PRINT_SPACE
12622 _OUT << "]," << std::endl;
12623 }
12624 else
12625 {
12626 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12627 }
12628
12629 print_uint32_t(obj->subpassCount, "subpassCount", 1);
12630
12631 PRINT_SPACE
12632 _OUT << "\"pSubpasses\": " << std::endl;
12633 if (obj->pSubpasses) {
12634 PRINT_SPACE
12635 _OUT << "[" << std::endl;
12636 for (unsigned int i = 0; i < obj->subpassCount; i++) {
12637 if (i+1 == obj->subpassCount)
12638 print_VkSubpassDescription(obj->pSubpasses[i], "pSubpasses", 0);
12639 else
12640 print_VkSubpassDescription(obj->pSubpasses[i], "pSubpasses", 1);
12641 }
12642 PRINT_SPACE
12643 _OUT << "]," << std::endl;
12644 }
12645 else
12646 {
12647 PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12648 }
12649
12650 print_uint32_t(obj->dependencyCount, "dependencyCount", 1);
12651
12652 PRINT_SPACE
12653 _OUT << "\"pDependencies\": " << std::endl;
12654 if (obj->pDependencies) {
12655 PRINT_SPACE
12656 _OUT << "[" << std::endl;
12657 for (unsigned int i = 0; i < obj->dependencyCount; i++) {
12658 if (i+1 == obj->dependencyCount)
12659 print_VkSubpassDependency(obj->pDependencies[i], "pDependencies", 0);
12660 else
12661 print_VkSubpassDependency(obj->pDependencies[i], "pDependencies", 1);
12662 }
12663 PRINT_SPACE
12664 _OUT << "]" << std::endl;
12665 }
12666 else
12667 {
12668 PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
12669 }
12670
12671 INDENT(-4);
12672 PRINT_SPACE
12673 if (commaNeeded)
12674 _OUT << "}," << std::endl;
12675 else
12676 _OUT << "}" << std::endl;
12677 }
12678
print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)12679 static void print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
12680 PRINT_SPACE
12681 _OUT << "{" << std::endl;
12682 INDENT(4);
12683
12684 print_VkStructureType(obj.sType, "sType", 1);
12685
12686 if (obj.pNext) {
12687 dumpPNextChain(obj.pNext);
12688 } else {
12689 PRINT_SPACE
12690 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12691 }
12692
12693 print_VkCommandPoolCreateFlags(obj.flags, "flags", 1);
12694
12695 print_uint32_t(obj.queueFamilyIndex, "queueFamilyIndex", 0);
12696
12697 INDENT(-4);
12698 PRINT_SPACE
12699 if (commaNeeded)
12700 _OUT << "}," << std::endl;
12701 else
12702 _OUT << "}" << std::endl;
12703 }
print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)12704 static void print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
12705 PRINT_SPACE
12706 _OUT << "{" << std::endl;
12707 INDENT(4);
12708
12709 print_VkStructureType(obj->sType, "sType", 1);
12710
12711 if (obj->pNext) {
12712 dumpPNextChain(obj->pNext);
12713 } else {
12714 PRINT_SPACE
12715 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12716 }
12717
12718 print_VkCommandPoolCreateFlags(obj->flags, "flags", 1);
12719
12720 print_uint32_t(obj->queueFamilyIndex, "queueFamilyIndex", 0);
12721
12722 INDENT(-4);
12723 PRINT_SPACE
12724 if (commaNeeded)
12725 _OUT << "}," << std::endl;
12726 else
12727 _OUT << "}" << std::endl;
12728 }
12729
print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj,const std::string & s,bool commaNeeded=true)12730 static void print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
12731 PRINT_SPACE
12732 _OUT << "{" << std::endl;
12733 INDENT(4);
12734
12735 print_VkStructureType(obj.sType, "sType", 1);
12736
12737 if (obj.pNext) {
12738 dumpPNextChain(obj.pNext);
12739 } else {
12740 PRINT_SPACE
12741 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12742 }
12743
12744 // CTS : required value
12745 PRINT_SPACE _OUT << "\"" << "commandPool" << "\"" << " : " << "\"" << "\"," << std::endl;
12746
12747 print_VkCommandBufferLevel(obj.level, "level", 1);
12748
12749 print_uint32_t(obj.commandBufferCount, "commandBufferCount", 0);
12750
12751 INDENT(-4);
12752 PRINT_SPACE
12753 if (commaNeeded)
12754 _OUT << "}," << std::endl;
12755 else
12756 _OUT << "}" << std::endl;
12757 }
print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * obj,const std::string & s,bool commaNeeded=true)12758 static void print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
12759 PRINT_SPACE
12760 _OUT << "{" << std::endl;
12761 INDENT(4);
12762
12763 print_VkStructureType(obj->sType, "sType", 1);
12764
12765 if (obj->pNext) {
12766 dumpPNextChain(obj->pNext);
12767 } else {
12768 PRINT_SPACE
12769 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12770 }
12771
12772 // CTS : required value
12773 PRINT_SPACE _OUT << "\"" << "commandPool" << "\"" << " : " << "\"" << "\"," << std::endl;
12774
12775 print_VkCommandBufferLevel(obj->level, "level", 1);
12776
12777 print_uint32_t(obj->commandBufferCount, "commandBufferCount", 0);
12778
12779 INDENT(-4);
12780 PRINT_SPACE
12781 if (commaNeeded)
12782 _OUT << "}," << std::endl;
12783 else
12784 _OUT << "}" << std::endl;
12785 }
12786
print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj,const std::string & s,bool commaNeeded=true)12787 static void print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj, const std::string& s, bool commaNeeded=true) {
12788 PRINT_SPACE
12789 _OUT << "{" << std::endl;
12790 INDENT(4);
12791
12792 print_VkStructureType(obj.sType, "sType", 1);
12793
12794 if (obj.pNext) {
12795 dumpPNextChain(obj.pNext);
12796 } else {
12797 PRINT_SPACE
12798 _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12799 }
12800
12801 // CTS : required value
12802 PRINT_SPACE _OUT << "\"" << "renderPass" << "\"" << " : " << obj.renderPass.getInternal() << "," << std::endl;
12803
12804 print_uint32_t(obj.subpass, "subpass", 1);
12805
12806 // CTS : required value
12807 PRINT_SPACE _OUT << "\"" << "framebuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
12808
12809 print_VkBool32(obj.occlusionQueryEnable, "occlusionQueryEnable", 1);
12810
12811 print_VkQueryControlFlags(obj.queryFlags, "queryFlags", 1);
12812
12813 print_VkQueryPipelineStatisticFlags(obj.pipelineStatistics, "pipelineStatistics", 0);
12814
12815 INDENT(-4);
12816 PRINT_SPACE
12817 if (commaNeeded)
12818 _OUT << "}," << std::endl;
12819 else
12820 _OUT << "}" << std::endl;
12821 }
print_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo * obj,const std::string & s,bool commaNeeded=true)12822