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 /** This code is generated. To make changes, please modify the scripts or the relevant xml **/
26 /********************************************************************************************/
27
28 #include <iostream>
29 #include <map>
30 #include <bitset>
31 #include <functional>
32 #include <sstream>
33 #include <cassert>
34 #include <cmath>
35 #ifndef VULKAN_JSON_CTS
36 #include <vulkan/vulkan.h>
37 #endif
38
39 #ifdef _WIN32
40 #ifndef WIN32_LEAN_AND_MEAN
41 #define WIN32_LEAN_AND_MEAN
42 #endif
43 #define VC_EXTRALEAN
44 #define NOMINMAX
45 #include <windows.h>
46 #endif
47
48 namespace vk_json
49 {
50
51 static thread_local int s_num_spaces = 0;
52 static thread_local std::stringstream _string_stream;
53
54 static void dumpPNextChain(const void *pNext);
55
56 // By default, redirect to std::cout. Can stream it to a stringstream if needed.
57 //#define _OUT std::cout
58 #define _OUT _string_stream
59
60 // Helper utility to do indentation in the generated json file.
61 #define PRINT_SPACE \
62 for (int k = 0; k < s_num_spaces; k++) \
63 _OUT << " ";
64
65 #define INDENT(sz) s_num_spaces += (sz);
66
67 #define PRINT_VAL(c) \
68 PRINT_SPACE \
69 if (s != "") \
70 { \
71 _OUT << "\"" << s << "\"" \
72 << " : " << o << (c ? "," : "") << std::endl; \
73 } \
74 else \
75 { \
76 _OUT << o << (c ? "," : "") << std::endl; \
77 }
78
79 #define PRINT_STR(c) \
80 PRINT_SPACE \
81 if (s != "") \
82 { \
83 _OUT << "\"" << s << "\"" \
84 << " : " \
85 << "\"" << o << "\"" << (c ? "," : "") << std::endl; \
86 } \
87 else \
88 { \
89 _OUT << "\"" << o << "\"" << (c ? "," : "") << std::endl; \
90 }
91
92 // To make sure the generated data is consistent across platforms,
93 // we typecast to 32-bit and dump the data.
94 // The value is not expected to exceed the range.
print_size_t(const size_t * o,const std::string & s,bool commaNeeded=true)95 static void print_size_t(const size_t *o, const std::string &s, bool commaNeeded = true)
96 {
97 PRINT_SPACE
98 _OUT << "\"" << s << "\""
99 << " : " << static_cast<uint32_t>(*o) << (commaNeeded ? "," : "") << std::endl;
100 }
print_size_t(size_t o,const std::string & s,bool commaNeeded=true)101 static void print_size_t(size_t o, const std::string &s, bool commaNeeded = true)
102 {
103 PRINT_SPACE
104 _OUT << "\"" << s << "\""
105 << " : " << static_cast<uint32_t>(o) << (commaNeeded ? "," : "") << std::endl;
106 }
107
print_int32_t(int32_t o,const std::string & s,bool commaNeeded=true)108 static void print_int32_t(int32_t o, const std::string &s, bool commaNeeded = true)
109 {
110 PRINT_VAL(commaNeeded)
111 }
112
print_int32_t(const int32_t * o,const std::string & s,bool commaNeeded=true)113 static void print_int32_t(const int32_t *o, const std::string &s, bool commaNeeded = true)
114 {
115 PRINT_VAL(commaNeeded)
116 }
117
print_uint32_t(uint32_t o,const std::string & s,bool commaNeeded=true)118 static void print_uint32_t(uint32_t o, const std::string &s, bool commaNeeded = true)
119 {
120 PRINT_VAL(commaNeeded)
121 }
122
print_uint32_t(const uint32_t * o,const std::string & s,bool commaNeeded=true)123 static void print_uint32_t(const uint32_t *o, const std::string &s, bool commaNeeded = true)
124 {
125 PRINT_VAL(commaNeeded)
126 }
127
print_uint8_t(uint8_t o,const std::string & s,bool commaNeeded=true)128 static void print_uint8_t(uint8_t o, const std::string &s, bool commaNeeded = true)
129 {
130 PRINT_VAL(commaNeeded)
131 }
132
print_uint8_t(const uint8_t * o,const std::string & s,bool commaNeeded=true)133 static void print_uint8_t(const uint8_t *o, const std::string &s, bool commaNeeded = true)
134 {
135 PRINT_VAL(commaNeeded)
136 }
137
print_uint64_t(uint64_t o,const std::string & s,bool commaNeeded=true)138 static void print_uint64_t(uint64_t o, const std::string &s, bool commaNeeded = true)
139 {
140 PRINT_VAL(commaNeeded)
141 }
142
print_uint64_t(const uint64_t * o,const std::string & s,bool commaNeeded=true)143 static void print_uint64_t(const uint64_t *o, const std::string &s, bool commaNeeded = true)
144 {
145 PRINT_VAL(commaNeeded)
146 }
147
print_float(float o,const std::string & s,bool commaNeeded=true)148 static void print_float(float o, const std::string &s, bool commaNeeded = true)
149 {
150 if (std::isnan(o))
151 {
152 PRINT_SPACE
153 if (s != "")
154 _OUT << "\"" << s << "\""
155 << " : \"NaN\"" << (commaNeeded ? "," : "") << std::endl;
156 else
157 _OUT << "\"NaN\"" << (commaNeeded ? "," : "") << std::endl;
158 }
159 else
160 {
161 PRINT_VAL(commaNeeded)
162 }
163 }
164
print_float(const float * o,const std::string & s,bool commaNeeded=true)165 static void print_float(const float *o, const std::string &s, bool commaNeeded = true)
166 {
167 if (std::isnan(*o))
168 {
169 PRINT_SPACE
170 if (s != "")
171 _OUT << "\"" << s << "\""
172 << " : \"NaN\"" << (commaNeeded ? "," : "") << std::endl;
173 else
174 _OUT << "\"NaN\"" << (commaNeeded ? "," : "") << std::endl;
175 }
176 else
177 {
178 PRINT_VAL(commaNeeded)
179 }
180 }
181
print_int(int o,const std::string & s,bool commaNeeded=true)182 static void print_int(int o, const std::string &s, bool commaNeeded = true)
183 {
184 PRINT_VAL(commaNeeded)
185 }
186
print_int(const int * o,const std::string & s,bool commaNeeded=true)187 static void print_int(const int *o, const std::string &s, bool commaNeeded = true)
188 {
189 PRINT_VAL(commaNeeded)
190 }
191
print_double(double o,const std::string & s,bool commaNeeded=true)192 static void print_double(double o, const std::string &s, bool commaNeeded = true)
193 {
194 PRINT_VAL(commaNeeded)
195 }
196
print_double(const double * o,const std::string & s,bool commaNeeded=true)197 static void print_double(const double *o, const std::string &s, bool commaNeeded = true)
198 {
199 PRINT_VAL(commaNeeded)
200 }
201
print_int64_t(int64_t o,const std::string & s,bool commaNeeded=true)202 static void print_int64_t(int64_t o, const std::string &s, bool commaNeeded = true)
203 {
204 PRINT_VAL(commaNeeded)
205 }
206
print_int64_t(const int64_t * o,const std::string & s,bool commaNeeded=true)207 static void print_int64_t(const int64_t *o, const std::string &s, bool commaNeeded = true)
208 {
209 PRINT_VAL(commaNeeded)
210 }
211
print_uint16_t(uint16_t o,const std::string & s,bool commaNeeded=true)212 static void print_uint16_t(uint16_t o, const std::string &s, bool commaNeeded = true)
213 {
214 PRINT_VAL(commaNeeded)
215 }
216
print_uint16_t(const uint16_t * o,const std::string & s,bool commaNeeded=true)217 static void print_uint16_t(const uint16_t *o, const std::string &s, bool commaNeeded = true)
218 {
219 PRINT_VAL(commaNeeded)
220 }
221
print_char(const char * const * o,const std::string & s,bool commaNeeded=true)222 static void print_char(const char *const *o, const std::string &s, bool commaNeeded = true)
223 {
224 PRINT_STR(commaNeeded)
225 }
226
print_char(char o,const std::string & s,bool commaNeeded=true)227 static void print_char(char o, const std::string &s, bool commaNeeded = true)
228 {
229 PRINT_VAL(commaNeeded)
230 }
231
print_char(const char * o,const std::string & s,bool commaNeeded=true)232 static void print_char(const char *o, const std::string &s, bool commaNeeded = true)
233 {
234 PRINT_STR(commaNeeded)
235 }
236
237 // Base 64 formater class from executor/xeTestLogWriter.cpp
238
239 class Base64Formatter
240 {
241 public:
242 const uint8_t *data;
243 int numBytes;
244
Base64Formatter(const uint8_t * data_,int numBytes_)245 Base64Formatter(const uint8_t *data_, int numBytes_) : data(data_), numBytes(numBytes_)
246 {
247 }
248 };
249
operator <<(std::ostream & str,const Base64Formatter & fmt)250 std::ostream &operator<<(std::ostream &str, const Base64Formatter &fmt)
251 {
252 static const char s_base64Table[64] = {
253 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',
254 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r',
255 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'};
256
257 const uint8_t *data = fmt.data;
258 int numBytes = fmt.numBytes;
259 int srcNdx = 0;
260
261 DE_ASSERT(data && (numBytes > 0));
262
263 /* Loop all input chars. */
264 while (srcNdx < numBytes)
265 {
266 int numRead = de::min(3, numBytes - srcNdx);
267 uint8_t s0 = data[srcNdx];
268 uint8_t s1 = (numRead >= 2) ? data[srcNdx + 1] : 0;
269 uint8_t s2 = (numRead >= 3) ? data[srcNdx + 2] : 0;
270 char d[4];
271
272 srcNdx += numRead;
273
274 d[0] = s_base64Table[s0 >> 2];
275 d[1] = s_base64Table[((s0 & 0x3) << 4) | (s1 >> 4)];
276 d[2] = s_base64Table[((s1 & 0xF) << 2) | (s2 >> 6)];
277 d[3] = s_base64Table[s2 & 0x3F];
278
279 if (numRead < 3)
280 d[3] = '=';
281 if (numRead < 2)
282 d[2] = '=';
283
284 /* Write data. */
285 str.write(&d[0], sizeof(d));
286 }
287
288 return str;
289 }
290
toBase64(const uint8_t * bytes,int numBytes)291 inline Base64Formatter toBase64(const uint8_t *bytes, int numBytes)
292 {
293 return Base64Formatter(bytes, numBytes);
294 }
295
print_void_data(const void * o,int oSize,const std::string & s,bool commaNeeded=true)296 static void print_void_data(const void *o, int oSize, const std::string &s, bool commaNeeded = true)
297 {
298 if (o != NULL && oSize != 0)
299 {
300 PRINT_SPACE _OUT << "\"" << s << "\""
301 << " : "
302 << "\"" << toBase64((uint8_t *)o, oSize) << "\"" << (commaNeeded ? "," : "") << std::endl;
303 }
304 else
305 {
306 PRINT_SPACE _OUT << "\"" << s << "\""
307 << " : "
308 << "\"NULL\"" << (commaNeeded ? "," : "") << std::endl;
309 }
310 }
311
print_VkBool32(VkBool32 obj,const std::string & str,bool commaNeeded=true)312 static void print_VkBool32(VkBool32 obj, const std::string &str, bool commaNeeded = true)
313 {
314 PRINT_SPACE
315 _OUT << "\"" << str << "\""
316 << " : "
317 << "\"" << ((obj == 0) ? ("VK_FALSE") : ("VK_TRUE")) << "\"" << (commaNeeded ? "," : "") << std::endl;
318 }
print_VkBool32(const VkBool32 * obj,const std::string & str,bool commaNeeded=true)319 static void print_VkBool32(const VkBool32 *obj, const std::string &str, bool commaNeeded = true)
320 {
321 PRINT_SPACE
322 _OUT << "\"" << str << "\""
323 << " : "
324 << "\"" << ((obj == 0) ? ("VK_FALSE") : ("VK_TRUE")) << "\"" << (commaNeeded ? "," : "") << std::endl;
325 }
326
print_VkDeviceAddress(VkDeviceAddress obj,const std::string & str,bool commaNeeded=true)327 static void print_VkDeviceAddress(VkDeviceAddress obj, const std::string &str, bool commaNeeded = true)
328 {
329 PRINT_SPACE
330 _OUT << "\"" << str << "\""
331 << " : "
332 << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
333 }
print_VkDeviceAddress(const VkDeviceAddress * obj,const std::string & str,bool commaNeeded=true)334 static void print_VkDeviceAddress(const VkDeviceAddress *obj, const std::string &str, bool commaNeeded = true)
335 {
336 PRINT_SPACE
337 _OUT << "\"" << str << "\""
338 << " : "
339 << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
340 }
341
print_VkDeviceSize(VkDeviceSize obj,const std::string & str,bool commaNeeded=true)342 static void print_VkDeviceSize(VkDeviceSize obj, const std::string &str, bool commaNeeded = true)
343 {
344 PRINT_SPACE
345 _OUT << "\"" << str << "\""
346 << " : "
347 << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
348 }
print_VkDeviceSize(const VkDeviceSize * obj,const std::string & str,bool commaNeeded=true)349 static void print_VkDeviceSize(const VkDeviceSize *obj, const std::string &str, bool commaNeeded = true)
350 {
351 PRINT_SPACE
352 _OUT << "\"" << str << "\""
353 << " : "
354 << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
355 }
356
print_VkFlags(VkFlags obj,const std::string & str,bool commaNeeded=true)357 static void print_VkFlags(VkFlags obj, const std::string &str, bool commaNeeded = true)
358 {
359 PRINT_SPACE
360 _OUT << "\"" << str << "\""
361 << " : "
362 << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
363 }
print_VkFlags(const VkFlags * obj,const std::string & str,bool commaNeeded=true)364 static void print_VkFlags(const VkFlags *obj, const std::string &str, bool commaNeeded = true)
365 {
366 PRINT_SPACE
367 _OUT << "\"" << str << "\""
368 << " : "
369 << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
370 }
371
print_VkSampleMask(VkSampleMask obj,const std::string & str,bool commaNeeded=true)372 static void print_VkSampleMask(VkSampleMask obj, const std::string &str, bool commaNeeded = true)
373 {
374 PRINT_SPACE
375 _OUT << "\"" << str << "\""
376 << " : "
377 << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
378 }
print_VkSampleMask(const VkSampleMask * obj,const std::string & str,bool commaNeeded=true)379 static void print_VkSampleMask(const VkSampleMask *obj, const std::string &str, bool commaNeeded = true)
380 {
381 PRINT_SPACE
382 _OUT << "\"" << str << "\""
383 << " : "
384 << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
385 }
386
print_VkBuffer(VkBuffer obj,const std::string & str,bool commaNeeded=true)387 static void print_VkBuffer(VkBuffer obj, const std::string &str, bool commaNeeded = true)
388 {
389 PRINT_SPACE
390 if (commaNeeded)
391 _OUT << "\"" << str << "\""
392 << "," << std::endl;
393 else
394 _OUT << "\"" << str << "\"" << std::endl;
395 }
print_VkBuffer(const VkBuffer * obj,const std::string & str,bool commaNeeded=true)396 static void print_VkBuffer(const VkBuffer *obj, const std::string &str, bool commaNeeded = true)
397 {
398 PRINT_SPACE
399 if (commaNeeded)
400 _OUT << "\"" << str << "\""
401 << "," << std::endl;
402 else
403 _OUT << "\"" << str << "\"" << std::endl;
404 }
405
print_VkImage(VkImage obj,const std::string & str,bool commaNeeded=true)406 static void print_VkImage(VkImage obj, const std::string &str, bool commaNeeded = true)
407 {
408 PRINT_SPACE
409 if (commaNeeded)
410 _OUT << "\"" << str << "\""
411 << "," << std::endl;
412 else
413 _OUT << "\"" << str << "\"" << std::endl;
414 }
print_VkImage(const VkImage * obj,const std::string & str,bool commaNeeded=true)415 static void print_VkImage(const VkImage *obj, const std::string &str, bool commaNeeded = true)
416 {
417 PRINT_SPACE
418 if (commaNeeded)
419 _OUT << "\"" << str << "\""
420 << "," << std::endl;
421 else
422 _OUT << "\"" << str << "\"" << std::endl;
423 }
424
print_VkInstance(VkInstance obj,const std::string & str,bool commaNeeded=true)425 static void print_VkInstance(VkInstance obj, const std::string &str, bool commaNeeded = true)
426 {
427 PRINT_SPACE
428 if (commaNeeded)
429 _OUT << "\"" << str << "\""
430 << "," << std::endl;
431 else
432 _OUT << "\"" << str << "\"" << std::endl;
433 }
print_VkInstance(const VkInstance * obj,const std::string & str,bool commaNeeded=true)434 static void print_VkInstance(const VkInstance *obj, const std::string &str, bool commaNeeded = true)
435 {
436 PRINT_SPACE
437 if (commaNeeded)
438 _OUT << "\"" << str << "\""
439 << "," << std::endl;
440 else
441 _OUT << "\"" << str << "\"" << std::endl;
442 }
443
print_VkPhysicalDevice(VkPhysicalDevice obj,const std::string & str,bool commaNeeded=true)444 static void print_VkPhysicalDevice(VkPhysicalDevice obj, const std::string &str, bool commaNeeded = true)
445 {
446 PRINT_SPACE
447 if (commaNeeded)
448 _OUT << "\"" << str << "\""
449 << "," << std::endl;
450 else
451 _OUT << "\"" << str << "\"" << std::endl;
452 }
print_VkPhysicalDevice(const VkPhysicalDevice * obj,const std::string & str,bool commaNeeded=true)453 static void print_VkPhysicalDevice(const VkPhysicalDevice *obj, const std::string &str, bool commaNeeded = true)
454 {
455 PRINT_SPACE
456 if (commaNeeded)
457 _OUT << "\"" << str << "\""
458 << "," << std::endl;
459 else
460 _OUT << "\"" << str << "\"" << std::endl;
461 }
462
print_VkDevice(VkDevice obj,const std::string & str,bool commaNeeded=true)463 static void print_VkDevice(VkDevice obj, const std::string &str, bool commaNeeded = true)
464 {
465 PRINT_SPACE
466 if (commaNeeded)
467 _OUT << "\"" << str << "\""
468 << "," << std::endl;
469 else
470 _OUT << "\"" << str << "\"" << std::endl;
471 }
print_VkDevice(const VkDevice * obj,const std::string & str,bool commaNeeded=true)472 static void print_VkDevice(const VkDevice *obj, const std::string &str, bool commaNeeded = true)
473 {
474 PRINT_SPACE
475 if (commaNeeded)
476 _OUT << "\"" << str << "\""
477 << "," << std::endl;
478 else
479 _OUT << "\"" << str << "\"" << std::endl;
480 }
481
print_VkQueue(VkQueue obj,const std::string & str,bool commaNeeded=true)482 static void print_VkQueue(VkQueue obj, const std::string &str, bool commaNeeded = true)
483 {
484 PRINT_SPACE
485 if (commaNeeded)
486 _OUT << "\"" << str << "\""
487 << "," << std::endl;
488 else
489 _OUT << "\"" << str << "\"" << std::endl;
490 }
print_VkQueue(const VkQueue * obj,const std::string & str,bool commaNeeded=true)491 static void print_VkQueue(const VkQueue *obj, const std::string &str, bool commaNeeded = true)
492 {
493 PRINT_SPACE
494 if (commaNeeded)
495 _OUT << "\"" << str << "\""
496 << "," << std::endl;
497 else
498 _OUT << "\"" << str << "\"" << std::endl;
499 }
500
print_VkSemaphore(VkSemaphore obj,const std::string & str,bool commaNeeded=true)501 static void print_VkSemaphore(VkSemaphore obj, const std::string &str, bool commaNeeded = true)
502 {
503 PRINT_SPACE
504 if (commaNeeded)
505 _OUT << "\"" << str << "\""
506 << "," << std::endl;
507 else
508 _OUT << "\"" << str << "\"" << std::endl;
509 }
print_VkSemaphore(const VkSemaphore * obj,const std::string & str,bool commaNeeded=true)510 static void print_VkSemaphore(const VkSemaphore *obj, const std::string &str, bool commaNeeded = true)
511 {
512 PRINT_SPACE
513 if (commaNeeded)
514 _OUT << "\"" << str << "\""
515 << "," << std::endl;
516 else
517 _OUT << "\"" << str << "\"" << std::endl;
518 }
519
print_VkCommandBuffer(VkCommandBuffer obj,const std::string & str,bool commaNeeded=true)520 static void print_VkCommandBuffer(VkCommandBuffer obj, const std::string &str, bool commaNeeded = true)
521 {
522 PRINT_SPACE
523 if (commaNeeded)
524 _OUT << "\"" << str << "\""
525 << "," << std::endl;
526 else
527 _OUT << "\"" << str << "\"" << std::endl;
528 }
print_VkCommandBuffer(const VkCommandBuffer * obj,const std::string & str,bool commaNeeded=true)529 static void print_VkCommandBuffer(const VkCommandBuffer *obj, const std::string &str, bool commaNeeded = true)
530 {
531 PRINT_SPACE
532 if (commaNeeded)
533 _OUT << "\"" << str << "\""
534 << "," << std::endl;
535 else
536 _OUT << "\"" << str << "\"" << std::endl;
537 }
538
print_VkFence(VkFence obj,const std::string & str,bool commaNeeded=true)539 static void print_VkFence(VkFence obj, const std::string &str, bool commaNeeded = true)
540 {
541 PRINT_SPACE
542 if (commaNeeded)
543 _OUT << "\"" << str << "\""
544 << "," << std::endl;
545 else
546 _OUT << "\"" << str << "\"" << std::endl;
547 }
print_VkFence(const VkFence * obj,const std::string & str,bool commaNeeded=true)548 static void print_VkFence(const VkFence *obj, const std::string &str, bool commaNeeded = true)
549 {
550 PRINT_SPACE
551 if (commaNeeded)
552 _OUT << "\"" << str << "\""
553 << "," << std::endl;
554 else
555 _OUT << "\"" << str << "\"" << std::endl;
556 }
557
print_VkDeviceMemory(VkDeviceMemory obj,const std::string & str,bool commaNeeded=true)558 static void print_VkDeviceMemory(VkDeviceMemory obj, const std::string &str, bool commaNeeded = true)
559 {
560 PRINT_SPACE
561 if (commaNeeded)
562 _OUT << "\"" << str << "\""
563 << "," << std::endl;
564 else
565 _OUT << "\"" << str << "\"" << std::endl;
566 }
print_VkDeviceMemory(const VkDeviceMemory * obj,const std::string & str,bool commaNeeded=true)567 static void print_VkDeviceMemory(const VkDeviceMemory *obj, const std::string &str, bool commaNeeded = true)
568 {
569 PRINT_SPACE
570 if (commaNeeded)
571 _OUT << "\"" << str << "\""
572 << "," << std::endl;
573 else
574 _OUT << "\"" << str << "\"" << std::endl;
575 }
576
print_VkEvent(VkEvent obj,const std::string & str,bool commaNeeded=true)577 static void print_VkEvent(VkEvent obj, const std::string &str, bool commaNeeded = true)
578 {
579 PRINT_SPACE
580 if (commaNeeded)
581 _OUT << "\"" << str << "\""
582 << "," << std::endl;
583 else
584 _OUT << "\"" << str << "\"" << std::endl;
585 }
print_VkEvent(const VkEvent * obj,const std::string & str,bool commaNeeded=true)586 static void print_VkEvent(const VkEvent *obj, const std::string &str, bool commaNeeded = true)
587 {
588 PRINT_SPACE
589 if (commaNeeded)
590 _OUT << "\"" << str << "\""
591 << "," << std::endl;
592 else
593 _OUT << "\"" << str << "\"" << std::endl;
594 }
595
print_VkQueryPool(VkQueryPool obj,const std::string & str,bool commaNeeded=true)596 static void print_VkQueryPool(VkQueryPool obj, const std::string &str, bool commaNeeded = true)
597 {
598 PRINT_SPACE
599 if (commaNeeded)
600 _OUT << "\"" << str << "\""
601 << "," << std::endl;
602 else
603 _OUT << "\"" << str << "\"" << std::endl;
604 }
print_VkQueryPool(const VkQueryPool * obj,const std::string & str,bool commaNeeded=true)605 static void print_VkQueryPool(const VkQueryPool *obj, const std::string &str, bool commaNeeded = true)
606 {
607 PRINT_SPACE
608 if (commaNeeded)
609 _OUT << "\"" << str << "\""
610 << "," << std::endl;
611 else
612 _OUT << "\"" << str << "\"" << std::endl;
613 }
614
print_VkBufferView(VkBufferView obj,const std::string & str,bool commaNeeded=true)615 static void print_VkBufferView(VkBufferView obj, const std::string &str, bool commaNeeded = true)
616 {
617 PRINT_SPACE
618 if (commaNeeded)
619 _OUT << "\"" << str << "\""
620 << "," << std::endl;
621 else
622 _OUT << "\"" << str << "\"" << std::endl;
623 }
print_VkBufferView(const VkBufferView * obj,const std::string & str,bool commaNeeded=true)624 static void print_VkBufferView(const VkBufferView *obj, const std::string &str, bool commaNeeded = true)
625 {
626 PRINT_SPACE
627 if (commaNeeded)
628 _OUT << "\"" << str << "\""
629 << "," << std::endl;
630 else
631 _OUT << "\"" << str << "\"" << std::endl;
632 }
633
print_VkImageView(VkImageView obj,const std::string & str,bool commaNeeded=true)634 static void print_VkImageView(VkImageView obj, const std::string &str, bool commaNeeded = true)
635 {
636 PRINT_SPACE
637 if (commaNeeded)
638 _OUT << "\"" << str << "\""
639 << "," << std::endl;
640 else
641 _OUT << "\"" << str << "\"" << std::endl;
642 }
print_VkImageView(const VkImageView * obj,const std::string & str,bool commaNeeded=true)643 static void print_VkImageView(const VkImageView *obj, const std::string &str, bool commaNeeded = true)
644 {
645 PRINT_SPACE
646 if (commaNeeded)
647 _OUT << "\"" << str << "\""
648 << "," << std::endl;
649 else
650 _OUT << "\"" << str << "\"" << std::endl;
651 }
652
print_VkShaderModule(VkShaderModule obj,const std::string & str,bool commaNeeded=true)653 static void print_VkShaderModule(VkShaderModule obj, const std::string &str, bool commaNeeded = true)
654 {
655 PRINT_SPACE
656 if (commaNeeded)
657 _OUT << "\"" << str << "\""
658 << "," << std::endl;
659 else
660 _OUT << "\"" << str << "\"" << std::endl;
661 }
print_VkShaderModule(const VkShaderModule * obj,const std::string & str,bool commaNeeded=true)662 static void print_VkShaderModule(const VkShaderModule *obj, const std::string &str, bool commaNeeded = true)
663 {
664 PRINT_SPACE
665 if (commaNeeded)
666 _OUT << "\"" << str << "\""
667 << "," << std::endl;
668 else
669 _OUT << "\"" << str << "\"" << std::endl;
670 }
671
print_VkPipelineCache(VkPipelineCache obj,const std::string & str,bool commaNeeded=true)672 static void print_VkPipelineCache(VkPipelineCache obj, const std::string &str, bool commaNeeded = true)
673 {
674 PRINT_SPACE
675 if (commaNeeded)
676 _OUT << "\"" << str << "\""
677 << "," << std::endl;
678 else
679 _OUT << "\"" << str << "\"" << std::endl;
680 }
print_VkPipelineCache(const VkPipelineCache * obj,const std::string & str,bool commaNeeded=true)681 static void print_VkPipelineCache(const VkPipelineCache *obj, const std::string &str, bool commaNeeded = true)
682 {
683 PRINT_SPACE
684 if (commaNeeded)
685 _OUT << "\"" << str << "\""
686 << "," << std::endl;
687 else
688 _OUT << "\"" << str << "\"" << std::endl;
689 }
690
print_VkPipelineLayout(VkPipelineLayout obj,const std::string & str,bool commaNeeded=true)691 static void print_VkPipelineLayout(VkPipelineLayout obj, const std::string &str, bool commaNeeded = true)
692 {
693 PRINT_SPACE
694 if (commaNeeded)
695 _OUT << "\"" << str << "\""
696 << "," << std::endl;
697 else
698 _OUT << "\"" << str << "\"" << std::endl;
699 }
print_VkPipelineLayout(const VkPipelineLayout * obj,const std::string & str,bool commaNeeded=true)700 static void print_VkPipelineLayout(const VkPipelineLayout *obj, const std::string &str, bool commaNeeded = true)
701 {
702 PRINT_SPACE
703 if (commaNeeded)
704 _OUT << "\"" << str << "\""
705 << "," << std::endl;
706 else
707 _OUT << "\"" << str << "\"" << std::endl;
708 }
709
print_VkPipeline(VkPipeline obj,const std::string & str,bool commaNeeded=true)710 static void print_VkPipeline(VkPipeline obj, const std::string &str, bool commaNeeded = true)
711 {
712 PRINT_SPACE
713 if (commaNeeded)
714 _OUT << "\"" << str << "\""
715 << "," << std::endl;
716 else
717 _OUT << "\"" << str << "\"" << std::endl;
718 }
print_VkPipeline(const VkPipeline * obj,const std::string & str,bool commaNeeded=true)719 static void print_VkPipeline(const VkPipeline *obj, const std::string &str, bool commaNeeded = true)
720 {
721 PRINT_SPACE
722 if (commaNeeded)
723 _OUT << "\"" << str << "\""
724 << "," << std::endl;
725 else
726 _OUT << "\"" << str << "\"" << std::endl;
727 }
728
print_VkRenderPass(VkRenderPass obj,const std::string & str,bool commaNeeded=true)729 static void print_VkRenderPass(VkRenderPass obj, const std::string &str, bool commaNeeded = true)
730 {
731 PRINT_SPACE
732 if (commaNeeded)
733 _OUT << "\"" << str << "\""
734 << "," << std::endl;
735 else
736 _OUT << "\"" << str << "\"" << std::endl;
737 }
print_VkRenderPass(const VkRenderPass * obj,const std::string & str,bool commaNeeded=true)738 static void print_VkRenderPass(const VkRenderPass *obj, const std::string &str, bool commaNeeded = true)
739 {
740 PRINT_SPACE
741 if (commaNeeded)
742 _OUT << "\"" << str << "\""
743 << "," << std::endl;
744 else
745 _OUT << "\"" << str << "\"" << std::endl;
746 }
747
print_VkDescriptorSetLayout(VkDescriptorSetLayout obj,const std::string & str,bool commaNeeded=true)748 static void print_VkDescriptorSetLayout(VkDescriptorSetLayout obj, const std::string &str, bool commaNeeded = true)
749 {
750 PRINT_SPACE
751 if (commaNeeded)
752 _OUT << "\"" << str << "\""
753 << "," << std::endl;
754 else
755 _OUT << "\"" << str << "\"" << std::endl;
756 }
print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj,const std::string & str,bool commaNeeded=true)757 static void print_VkDescriptorSetLayout(const VkDescriptorSetLayout *obj, const std::string &str,
758 bool commaNeeded = true)
759 {
760 PRINT_SPACE
761 if (commaNeeded)
762 _OUT << "\"" << str << "\""
763 << "," << std::endl;
764 else
765 _OUT << "\"" << str << "\"" << std::endl;
766 }
767
print_VkSampler(VkSampler obj,const std::string & str,bool commaNeeded=true)768 static void print_VkSampler(VkSampler obj, const std::string &str, bool commaNeeded = true)
769 {
770 PRINT_SPACE
771 if (commaNeeded)
772 _OUT << "\"" << str << "\""
773 << "," << std::endl;
774 else
775 _OUT << "\"" << str << "\"" << std::endl;
776 }
print_VkSampler(const VkSampler * obj,const std::string & str,bool commaNeeded=true)777 static void print_VkSampler(const VkSampler *obj, const std::string &str, bool commaNeeded = true)
778 {
779 PRINT_SPACE
780 if (commaNeeded)
781 _OUT << "\"" << str << "\""
782 << "," << std::endl;
783 else
784 _OUT << "\"" << str << "\"" << std::endl;
785 }
786
print_VkDescriptorSet(VkDescriptorSet obj,const std::string & str,bool commaNeeded=true)787 static void print_VkDescriptorSet(VkDescriptorSet obj, const std::string &str, bool commaNeeded = true)
788 {
789 PRINT_SPACE
790 if (commaNeeded)
791 _OUT << "\"" << str << "\""
792 << "," << std::endl;
793 else
794 _OUT << "\"" << str << "\"" << std::endl;
795 }
print_VkDescriptorSet(const VkDescriptorSet * obj,const std::string & str,bool commaNeeded=true)796 static void print_VkDescriptorSet(const VkDescriptorSet *obj, const std::string &str, bool commaNeeded = true)
797 {
798 PRINT_SPACE
799 if (commaNeeded)
800 _OUT << "\"" << str << "\""
801 << "," << std::endl;
802 else
803 _OUT << "\"" << str << "\"" << std::endl;
804 }
805
print_VkDescriptorPool(VkDescriptorPool obj,const std::string & str,bool commaNeeded=true)806 static void print_VkDescriptorPool(VkDescriptorPool obj, const std::string &str, bool commaNeeded = true)
807 {
808 PRINT_SPACE
809 if (commaNeeded)
810 _OUT << "\"" << str << "\""
811 << "," << std::endl;
812 else
813 _OUT << "\"" << str << "\"" << std::endl;
814 }
print_VkDescriptorPool(const VkDescriptorPool * obj,const std::string & str,bool commaNeeded=true)815 static void print_VkDescriptorPool(const VkDescriptorPool *obj, const std::string &str, bool commaNeeded = true)
816 {
817 PRINT_SPACE
818 if (commaNeeded)
819 _OUT << "\"" << str << "\""
820 << "," << std::endl;
821 else
822 _OUT << "\"" << str << "\"" << std::endl;
823 }
824
print_VkFramebuffer(VkFramebuffer obj,const std::string & str,bool commaNeeded=true)825 static void print_VkFramebuffer(VkFramebuffer obj, const std::string &str, bool commaNeeded = true)
826 {
827 PRINT_SPACE
828 if (commaNeeded)
829 _OUT << "\"" << str << "\""
830 << "," << std::endl;
831 else
832 _OUT << "\"" << str << "\"" << std::endl;
833 }
print_VkFramebuffer(const VkFramebuffer * obj,const std::string & str,bool commaNeeded=true)834 static void print_VkFramebuffer(const VkFramebuffer *obj, const std::string &str, bool commaNeeded = true)
835 {
836 PRINT_SPACE
837 if (commaNeeded)
838 _OUT << "\"" << str << "\""
839 << "," << std::endl;
840 else
841 _OUT << "\"" << str << "\"" << std::endl;
842 }
843
print_VkCommandPool(VkCommandPool obj,const std::string & str,bool commaNeeded=true)844 static void print_VkCommandPool(VkCommandPool obj, const std::string &str, bool commaNeeded = true)
845 {
846 PRINT_SPACE
847 if (commaNeeded)
848 _OUT << "\"" << str << "\""
849 << "," << std::endl;
850 else
851 _OUT << "\"" << str << "\"" << std::endl;
852 }
print_VkCommandPool(const VkCommandPool * obj,const std::string & str,bool commaNeeded=true)853 static void print_VkCommandPool(const VkCommandPool *obj, const std::string &str, bool commaNeeded = true)
854 {
855 PRINT_SPACE
856 if (commaNeeded)
857 _OUT << "\"" << str << "\""
858 << "," << std::endl;
859 else
860 _OUT << "\"" << str << "\"" << std::endl;
861 }
862
863 static std::map<uint64_t, std::string> VkResult_map = {
864 std::make_pair(0, "VK_SUCCESS"),
865 std::make_pair(1, "VK_NOT_READY"),
866 std::make_pair(2, "VK_TIMEOUT"),
867 std::make_pair(3, "VK_EVENT_SET"),
868 std::make_pair(4, "VK_EVENT_RESET"),
869 std::make_pair(5, "VK_INCOMPLETE"),
870 std::make_pair(-1, "VK_ERROR_OUT_OF_HOST_MEMORY"),
871 std::make_pair(-2, "VK_ERROR_OUT_OF_DEVICE_MEMORY"),
872 std::make_pair(-3, "VK_ERROR_INITIALIZATION_FAILED"),
873 std::make_pair(-4, "VK_ERROR_DEVICE_LOST"),
874 std::make_pair(-5, "VK_ERROR_MEMORY_MAP_FAILED"),
875 std::make_pair(-6, "VK_ERROR_LAYER_NOT_PRESENT"),
876 std::make_pair(-7, "VK_ERROR_EXTENSION_NOT_PRESENT"),
877 std::make_pair(-8, "VK_ERROR_FEATURE_NOT_PRESENT"),
878 std::make_pair(-9, "VK_ERROR_INCOMPATIBLE_DRIVER"),
879 std::make_pair(-10, "VK_ERROR_TOO_MANY_OBJECTS"),
880 std::make_pair(-11, "VK_ERROR_FORMAT_NOT_SUPPORTED"),
881 std::make_pair(-12, "VK_ERROR_FRAGMENTED_POOL"),
882 std::make_pair(-13, "VK_ERROR_UNKNOWN"),
883 std::make_pair(1000069000, "VK_ERROR_OUT_OF_POOL_MEMORY"),
884 std::make_pair(1000072003, "VK_ERROR_INVALID_EXTERNAL_HANDLE"),
885 std::make_pair(1000161000, "VK_ERROR_FRAGMENTATION"),
886 std::make_pair(1000257000, "VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS"),
887 std::make_pair(1000011001, "VK_ERROR_VALIDATION_FAILED"),
888 std::make_pair(1000298000, "VK_ERROR_INVALID_PIPELINE_CACHE_DATA"),
889 std::make_pair(1000298001, "VK_ERROR_NO_PIPELINE_MATCH"),
890 std::make_pair(1000000000, "VK_ERROR_SURFACE_LOST_KHR"),
891 std::make_pair(1000000001, "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR"),
892 std::make_pair(1000001003, "VK_SUBOPTIMAL_KHR"),
893 std::make_pair(1000001004, "VK_ERROR_OUT_OF_DATE_KHR"),
894 std::make_pair(1000003001, "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR"),
895 std::make_pair(1000012000, "VK_ERROR_INVALID_SHADER_NV"),
896 std::make_pair(1000158000, "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT"),
897 std::make_pair(1000174001, "VK_ERROR_NOT_PERMITTED_EXT"),
898 std::make_pair(1000255000, "VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT"),
899 std::make_pair(1000268000, "VK_THREAD_IDLE_KHR"),
900 std::make_pair(1000268001, "VK_THREAD_DONE_KHR"),
901 std::make_pair(1000268002, "VK_OPERATION_DEFERRED_KHR"),
902 std::make_pair(1000268003, "VK_OPERATION_NOT_DEFERRED_KHR"),
903 std::make_pair(1000297000, "VK_PIPELINE_COMPILE_REQUIRED_EXT"),
904 };
print_VkResult(VkResult obj,const std::string & str,bool commaNeeded=true)905 static void print_VkResult(VkResult obj, const std::string &str, bool commaNeeded = true)
906 {
907 PRINT_SPACE
908 if (str != "")
909 _OUT << "\"" << str << "\""
910 << " : ";
911 if (commaNeeded)
912 _OUT << "\"" << VkResult_map[obj] << "\"," << std::endl;
913 else
914 _OUT << "\"" << VkResult_map[obj] << "\"" << std::endl;
915 }
print_VkResult(const VkResult * obj,const std::string & str,bool commaNeeded=true)916 static void print_VkResult(const VkResult *obj, const std::string &str, bool commaNeeded = true)
917 {
918 PRINT_SPACE
919 if (str != "")
920 _OUT << "\"" << str << "\""
921 << " : ";
922 if (commaNeeded)
923 _OUT << "\"" << VkResult_map[*obj] << "\"," << std::endl;
924 else
925 _OUT << "\"" << VkResult_map[*obj] << "\"" << std::endl;
926 }
927
928 static std::map<uint64_t, std::string> VkStructureType_map = {
929 std::make_pair(0, "VK_STRUCTURE_TYPE_APPLICATION_INFO"),
930 std::make_pair(1, "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO"),
931 std::make_pair(2, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO"),
932 std::make_pair(3, "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO"),
933 std::make_pair(4, "VK_STRUCTURE_TYPE_SUBMIT_INFO"),
934 std::make_pair(5, "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO"),
935 std::make_pair(6, "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE"),
936 std::make_pair(8, "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO"),
937 std::make_pair(9, "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO"),
938 std::make_pair(10, "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO"),
939 std::make_pair(11, "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO"),
940 std::make_pair(12, "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO"),
941 std::make_pair(13, "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO"),
942 std::make_pair(14, "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO"),
943 std::make_pair(15, "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO"),
944 std::make_pair(17, "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO"),
945 std::make_pair(18, "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO"),
946 std::make_pair(19, "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO"),
947 std::make_pair(20, "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO"),
948 std::make_pair(21, "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO"),
949 std::make_pair(22, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO"),
950 std::make_pair(23, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO"),
951 std::make_pair(24, "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO"),
952 std::make_pair(25, "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO"),
953 std::make_pair(26, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO"),
954 std::make_pair(27, "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO"),
955 std::make_pair(28, "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO"),
956 std::make_pair(29, "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO"),
957 std::make_pair(30, "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO"),
958 std::make_pair(31, "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO"),
959 std::make_pair(32, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO"),
960 std::make_pair(33, "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO"),
961 std::make_pair(34, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO"),
962 std::make_pair(35, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET"),
963 std::make_pair(36, "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET"),
964 std::make_pair(37, "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO"),
965 std::make_pair(38, "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO"),
966 std::make_pair(39, "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO"),
967 std::make_pair(40, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO"),
968 std::make_pair(41, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO"),
969 std::make_pair(42, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO"),
970 std::make_pair(43, "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO"),
971 std::make_pair(44, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER"),
972 std::make_pair(45, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER"),
973 std::make_pair(46, "VK_STRUCTURE_TYPE_MEMORY_BARRIER"),
974 std::make_pair(47, "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO"),
975 std::make_pair(48, "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO"),
976 std::make_pair(1000094000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES"),
977 std::make_pair(1000157000, "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO"),
978 std::make_pair(1000157001, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO"),
979 std::make_pair(1000083000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES"),
980 std::make_pair(1000127000, "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS"),
981 std::make_pair(1000127001, "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO"),
982 std::make_pair(1000060000, "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO"),
983 std::make_pair(1000060003, "VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO"),
984 std::make_pair(1000060004, "VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO"),
985 std::make_pair(1000060005, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO"),
986 std::make_pair(1000060013, "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO"),
987 std::make_pair(1000060014, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO"),
988 std::make_pair(1000070000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES"),
989 std::make_pair(1000070001, "VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO"),
990 std::make_pair(1000146000, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2"),
991 std::make_pair(1000146001, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2"),
992 std::make_pair(1000146003, "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2"),
993 std::make_pair(1000059000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2"),
994 std::make_pair(1000059001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2"),
995 std::make_pair(1000059002, "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2"),
996 std::make_pair(1000059003, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2"),
997 std::make_pair(1000059004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2"),
998 std::make_pair(1000059005, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2"),
999 std::make_pair(1000059006, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2"),
1000 std::make_pair(1000117000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES"),
1001 std::make_pair(1000117001, "VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO"),
1002 std::make_pair(1000117002, "VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO"),
1003 std::make_pair(1000117003, "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO"),
1004 std::make_pair(1000053000, "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO"),
1005 std::make_pair(1000053001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES"),
1006 std::make_pair(1000053002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES"),
1007 std::make_pair(1000120000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES"),
1008 std::make_pair(1000145000, "VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO"),
1009 std::make_pair(1000145001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES"),
1010 std::make_pair(1000145002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES"),
1011 std::make_pair(1000145003, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2"),
1012 std::make_pair(1000156000, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO"),
1013 std::make_pair(1000156001, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO"),
1014 std::make_pair(1000156002, "VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO"),
1015 std::make_pair(1000156003, "VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO"),
1016 std::make_pair(1000156004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES"),
1017 std::make_pair(1000156005, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES"),
1018 std::make_pair(1000071000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO"),
1019 std::make_pair(1000071001, "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES"),
1020 std::make_pair(1000071002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO"),
1021 std::make_pair(1000071003, "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES"),
1022 std::make_pair(1000071004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES"),
1023 std::make_pair(1000072000, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO"),
1024 std::make_pair(1000072001, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO"),
1025 std::make_pair(1000072002, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO"),
1026 std::make_pair(1000112000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO"),
1027 std::make_pair(1000112001, "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES"),
1028 std::make_pair(1000113000, "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO"),
1029 std::make_pair(1000077000, "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO"),
1030 std::make_pair(1000076000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO"),
1031 std::make_pair(1000076001, "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES"),
1032 std::make_pair(1000168000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES"),
1033 std::make_pair(1000168001, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT"),
1034 std::make_pair(1000063000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES"),
1035 std::make_pair(49, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES"),
1036 std::make_pair(50, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES"),
1037 std::make_pair(51, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES"),
1038 std::make_pair(52, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES"),
1039 std::make_pair(1000147000, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO"),
1040 std::make_pair(1000109000, "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2"),
1041 std::make_pair(1000109001, "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2"),
1042 std::make_pair(1000109002, "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2"),
1043 std::make_pair(1000109003, "VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2"),
1044 std::make_pair(1000109004, "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2"),
1045 std::make_pair(1000109005, "VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO"),
1046 std::make_pair(1000109006, "VK_STRUCTURE_TYPE_SUBPASS_END_INFO"),
1047 std::make_pair(1000177000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES"),
1048 std::make_pair(1000196000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES"),
1049 std::make_pair(1000180000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES"),
1050 std::make_pair(1000082000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES"),
1051 std::make_pair(1000197000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES"),
1052 std::make_pair(1000161000, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO"),
1053 std::make_pair(1000161001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES"),
1054 std::make_pair(1000161002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES"),
1055 std::make_pair(1000161003, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO"),
1056 std::make_pair(1000161004, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT"),
1057 std::make_pair(1000199000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES"),
1058 std::make_pair(1000199001, "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE"),
1059 std::make_pair(1000221000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES"),
1060 std::make_pair(1000246000, "VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO"),
1061 std::make_pair(1000130000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES"),
1062 std::make_pair(1000130001, "VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO"),
1063 std::make_pair(1000211000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES"),
1064 std::make_pair(1000108000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES"),
1065 std::make_pair(1000108001, "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO"),
1066 std::make_pair(1000108002, "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO"),
1067 std::make_pair(1000108003, "VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO"),
1068 std::make_pair(1000253000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES"),
1069 std::make_pair(1000175000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES"),
1070 std::make_pair(1000241000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES"),
1071 std::make_pair(1000241001, "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT"),
1072 std::make_pair(1000241002, "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT"),
1073 std::make_pair(1000261000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES"),
1074 std::make_pair(1000207000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES"),
1075 std::make_pair(1000207001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES"),
1076 std::make_pair(1000207002, "VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO"),
1077 std::make_pair(1000207003, "VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO"),
1078 std::make_pair(1000207004, "VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO"),
1079 std::make_pair(1000207005, "VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO"),
1080 std::make_pair(1000257000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES"),
1081 std::make_pair(1000244001, "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO"),
1082 std::make_pair(1000257002, "VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO"),
1083 std::make_pair(1000257003, "VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO"),
1084 std::make_pair(1000257004, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO"),
1085 std::make_pair(1000298000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES"),
1086 std::make_pair(1000298001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES"),
1087 std::make_pair(1000298002, "VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO"),
1088 std::make_pair(1000298003, "VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO"),
1089 std::make_pair(1000298004, "VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_CONSUMPTION"),
1090 std::make_pair(1000298005, "VK_STRUCTURE_TYPE_PIPELINE_POOL_SIZE"),
1091 std::make_pair(1000298007, "VK_STRUCTURE_TYPE_FAULT_DATA"),
1092 std::make_pair(1000298008, "VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO"),
1093 std::make_pair(1000298010, "VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO"),
1094 std::make_pair(1000001000, "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR"),
1095 std::make_pair(1000001001, "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR"),
1096 std::make_pair(1000060007, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR"),
1097 std::make_pair(1000060008, "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"),
1098 std::make_pair(1000060009, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"),
1099 std::make_pair(1000060010, "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR"),
1100 std::make_pair(1000060011, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"),
1101 std::make_pair(1000060012, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"),
1102 std::make_pair(1000002000, "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR"),
1103 std::make_pair(1000002001, "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR"),
1104 std::make_pair(1000003000, "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR"),
1105 std::make_pair(1000004000, "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR"),
1106 std::make_pair(1000005000, "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR"),
1107 std::make_pair(1000006000, "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR"),
1108 std::make_pair(1000008000, "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR"),
1109 std::make_pair(1000009000, "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR"),
1110 std::make_pair(1000010000, "VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID"),
1111 std::make_pair(1000010001, "VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID"),
1112 std::make_pair(1000010002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID"),
1113 std::make_pair(1000011000, "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT"),
1114 std::make_pair(1000018000, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD"),
1115 std::make_pair(1000022000, "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT"),
1116 std::make_pair(1000022001, "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT"),
1117 std::make_pair(1000022002, "VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT"),
1118 std::make_pair(1000023000, "VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR"),
1119 std::make_pair(1000023001, "VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR"),
1120 std::make_pair(1000023002, "VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR"),
1121 std::make_pair(1000023003, "VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR"),
1122 std::make_pair(1000023004, "VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR"),
1123 std::make_pair(1000023005, "VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR"),
1124 std::make_pair(1000023006, "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR"),
1125 std::make_pair(1000023007, "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR"),
1126 std::make_pair(1000023008, "VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR"),
1127 std::make_pair(1000023009, "VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR"),
1128 std::make_pair(1000023010, "VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR"),
1129 std::make_pair(1000023011, "VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR"),
1130 std::make_pair(1000023012, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR"),
1131 std::make_pair(1000023013, "VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR"),
1132 std::make_pair(1000023014, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR"),
1133 std::make_pair(1000023015, "VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR"),
1134 std::make_pair(1000024000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR"),
1135 std::make_pair(1000026000, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV"),
1136 std::make_pair(1000026001, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV"),
1137 std::make_pair(1000026002, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV"),
1138 std::make_pair(1000028000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT"),
1139 std::make_pair(1000028001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT"),
1140 std::make_pair(1000028002, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT"),
1141 std::make_pair(1000029000, "VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"),
1142 std::make_pair(1000029001, "VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"),
1143 std::make_pair(1000029002, "VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX"),
1144 std::make_pair(1000030000, "VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX"),
1145 std::make_pair(1000030001, "VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX"),
1146 std::make_pair(1000038000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT"),
1147 std::make_pair(1000038001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT"),
1148 std::make_pair(1000038002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1149 std::make_pair(1000038003, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT"),
1150 std::make_pair(1000038004, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT"),
1151 std::make_pair(1000038005, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT"),
1152 std::make_pair(1000038006, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT"),
1153 std::make_pair(1000038007, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT"),
1154 std::make_pair(1000038008, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT"),
1155 std::make_pair(1000038009, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT"),
1156 std::make_pair(1000038010, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT"),
1157 std::make_pair(1000039000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT"),
1158 std::make_pair(1000039001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT"),
1159 std::make_pair(1000039002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1160 std::make_pair(1000039003, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"),
1161 std::make_pair(1000039004, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT"),
1162 std::make_pair(1000039005, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT"),
1163 std::make_pair(1000039006, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_EXT"),
1164 std::make_pair(1000039007, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT"),
1165 std::make_pair(1000039008, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT"),
1166 std::make_pair(1000039009, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT"),
1167 std::make_pair(1000039010, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT"),
1168 std::make_pair(1000039011, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT"),
1169 std::make_pair(1000040000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR"),
1170 std::make_pair(1000040001, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT"),
1171 std::make_pair(1000040002, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR"),
1172 std::make_pair(1000040003, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT"),
1173 std::make_pair(1000040004, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT"),
1174 std::make_pair(1000040005, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1175 std::make_pair(1000040006, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR"),
1176 std::make_pair(1000040007, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR"),
1177 std::make_pair(1000041000, "VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD"),
1178 std::make_pair(1000044000, "VK_STRUCTURE_TYPE_RENDERING_INFO_KHR"),
1179 std::make_pair(1000044001, "VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR"),
1180 std::make_pair(1000044002, "VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR"),
1181 std::make_pair(1000044003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR"),
1182 std::make_pair(1000044004, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR"),
1183 std::make_pair(1000044006, "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR"),
1184 std::make_pair(1000044007, "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT"),
1185 std::make_pair(1000044008, "VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD"),
1186 std::make_pair(1000044009, "VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX"),
1187 std::make_pair(1000049000, "VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP"),
1188 std::make_pair(1000050000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV"),
1189 std::make_pair(1000051000, "VK_STRUCTURE_TYPE_PRIVATE_VENDOR_INFO_RESERVED_OFFSET_0_NV"),
1190 std::make_pair(1000056000, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV"),
1191 std::make_pair(1000056001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV"),
1192 std::make_pair(1000057000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV"),
1193 std::make_pair(1000057001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV"),
1194 std::make_pair(1000058000, "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV"),
1195 std::make_pair(1000060007, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR"),
1196 std::make_pair(1000060008, "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"),
1197 std::make_pair(1000060009, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"),
1198 std::make_pair(1000060010, "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR"),
1199 std::make_pair(1000060011, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"),
1200 std::make_pair(1000060012, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"),
1201 std::make_pair(1000061000, "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT"),
1202 std::make_pair(1000062000, "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN"),
1203 std::make_pair(1000066000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT"),
1204 std::make_pair(1000067000, "VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT"),
1205 std::make_pair(1000067001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT"),
1206 std::make_pair(1000073000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR"),
1207 std::make_pair(1000073001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR"),
1208 std::make_pair(1000073002, "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR"),
1209 std::make_pair(1000073003, "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR"),
1210 std::make_pair(1000074000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR"),
1211 std::make_pair(1000074001, "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR"),
1212 std::make_pair(1000074002, "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR"),
1213 std::make_pair(1000075000, "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR"),
1214 std::make_pair(1000078000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"),
1215 std::make_pair(1000078001, "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"),
1216 std::make_pair(1000078002, "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR"),
1217 std::make_pair(1000078003, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR"),
1218 std::make_pair(1000079000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR"),
1219 std::make_pair(1000079001, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR"),
1220 std::make_pair(1000080000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR"),
1221 std::make_pair(1000081000, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT"),
1222 std::make_pair(1000081001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT"),
1223 std::make_pair(1000081002, "VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT"),
1224 std::make_pair(1000084000, "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR"),
1225 std::make_pair(1000087000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV"),
1226 std::make_pair(1000090000, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT"),
1227 std::make_pair(1000091000, "VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT"),
1228 std::make_pair(1000091001, "VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT"),
1229 std::make_pair(1000091002, "VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT"),
1230 std::make_pair(1000091003, "VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT"),
1231 std::make_pair(1000092000, "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE"),
1232 std::make_pair(1000097000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX"),
1233 std::make_pair(1000098000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV"),
1234 std::make_pair(1000099000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT"),
1235 std::make_pair(1000099001, "VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT"),
1236 std::make_pair(1000101000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT"),
1237 std::make_pair(1000101001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT"),
1238 std::make_pair(1000102000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT"),
1239 std::make_pair(1000102001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT"),
1240 std::make_pair(1000105000, "VK_STRUCTURE_TYPE_HDR_METADATA_EXT"),
1241 std::make_pair(1000111000, "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR"),
1242 std::make_pair(1000114000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR"),
1243 std::make_pair(1000114001, "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR"),
1244 std::make_pair(1000114002, "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR"),
1245 std::make_pair(1000115000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR"),
1246 std::make_pair(1000115001, "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR"),
1247 std::make_pair(1000116000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR"),
1248 std::make_pair(1000116001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR"),
1249 std::make_pair(1000116002, "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR"),
1250 std::make_pair(1000116003, "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR"),
1251 std::make_pair(1000116004, "VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR"),
1252 std::make_pair(1000116005, "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR"),
1253 std::make_pair(1000116006, "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR"),
1254 std::make_pair(1000116007, "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR"),
1255 std::make_pair(1000119000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR"),
1256 std::make_pair(1000119001, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR"),
1257 std::make_pair(1000119002, "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR"),
1258 std::make_pair(1000121000, "VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR"),
1259 std::make_pair(1000121001, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR"),
1260 std::make_pair(1000121002, "VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR"),
1261 std::make_pair(1000121003, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR"),
1262 std::make_pair(1000121004, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR"),
1263 std::make_pair(1000122000, "VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK"),
1264 std::make_pair(1000123000, "VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK"),
1265 std::make_pair(1000128000, "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT"),
1266 std::make_pair(1000128001, "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT"),
1267 std::make_pair(1000128002, "VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT"),
1268 std::make_pair(1000128003, "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT"),
1269 std::make_pair(1000128004, "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT"),
1270 std::make_pair(1000129000, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID"),
1271 std::make_pair(1000129001, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID"),
1272 std::make_pair(1000129002, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID"),
1273 std::make_pair(1000129003, "VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"),
1274 std::make_pair(1000129004, "VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"),
1275 std::make_pair(1000129005, "VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID"),
1276 std::make_pair(1000129006, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID"),
1277 std::make_pair(1000138000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT"),
1278 std::make_pair(1000138001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT"),
1279 std::make_pair(1000138002, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT"),
1280 std::make_pair(1000138003, "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT"),
1281 std::make_pair(1000143000, "VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT"),
1282 std::make_pair(1000143001, "VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT"),
1283 std::make_pair(1000143002, "VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT"),
1284 std::make_pair(1000143003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT"),
1285 std::make_pair(1000143004, "VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT"),
1286 std::make_pair(1000148000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT"),
1287 std::make_pair(1000148001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT"),
1288 std::make_pair(1000148002, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT"),
1289 std::make_pair(1000149000, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV"),
1290 std::make_pair(1000150007, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR"),
1291 std::make_pair(1000150000, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR"),
1292 std::make_pair(1000150002, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR"),
1293 std::make_pair(1000150003, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR"),
1294 std::make_pair(1000150004, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR"),
1295 std::make_pair(1000150005, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR"),
1296 std::make_pair(1000150006, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR"),
1297 std::make_pair(1000150009, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR"),
1298 std::make_pair(1000150010, "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR"),
1299 std::make_pair(1000150011, "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR"),
1300 std::make_pair(1000150012, "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR"),
1301 std::make_pair(1000150013, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR"),
1302 std::make_pair(1000150014, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR"),
1303 std::make_pair(1000150017, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR"),
1304 std::make_pair(1000150020, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR"),
1305 std::make_pair(1000347000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR"),
1306 std::make_pair(1000347001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR"),
1307 std::make_pair(1000150015, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR"),
1308 std::make_pair(1000150016, "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR"),
1309 std::make_pair(1000150018, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR"),
1310 std::make_pair(1000348013, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR"),
1311 std::make_pair(1000152000, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV"),
1312 std::make_pair(1000154000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV"),
1313 std::make_pair(1000154001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV"),
1314 std::make_pair(1000158000, "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT"),
1315 std::make_pair(1000158002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT"),
1316 std::make_pair(1000158003, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT"),
1317 std::make_pair(1000158004, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT"),
1318 std::make_pair(1000158005, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT"),
1319 std::make_pair(1000158006, "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT"),
1320 std::make_pair(1000160000, "VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT"),
1321 std::make_pair(1000160001, "VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT"),
1322 std::make_pair(1000163000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR"),
1323 std::make_pair(1000163001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR"),
1324 std::make_pair(1000164000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV"),
1325 std::make_pair(1000164001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV"),
1326 std::make_pair(1000164002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV"),
1327 std::make_pair(1000164005, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV"),
1328 std::make_pair(1000165000, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV"),
1329 std::make_pair(1000165001, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV"),
1330 std::make_pair(1000165003, "VK_STRUCTURE_TYPE_GEOMETRY_NV"),
1331 std::make_pair(1000165004, "VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV"),
1332 std::make_pair(1000165005, "VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV"),
1333 std::make_pair(1000165006, "VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV"),
1334 std::make_pair(1000165007, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV"),
1335 std::make_pair(1000165008, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV"),
1336 std::make_pair(1000165009, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV"),
1337 std::make_pair(1000165011, "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV"),
1338 std::make_pair(1000165012, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV"),
1339 std::make_pair(1000166000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV"),
1340 std::make_pair(1000166001, "VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV"),
1341 std::make_pair(1000170000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT"),
1342 std::make_pair(1000170001, "VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT"),
1343 std::make_pair(1000174000, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT"),
1344 std::make_pair(1000178000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT"),
1345 std::make_pair(1000178001, "VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT"),
1346 std::make_pair(1000178002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT"),
1347 std::make_pair(1000181000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR"),
1348 std::make_pair(1000183000, "VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD"),
1349 std::make_pair(1000184000, "VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT"),
1350 std::make_pair(1000185000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD"),
1351 std::make_pair(1000187000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT"),
1352 std::make_pair(1000187001, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT"),
1353 std::make_pair(1000187002, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1354 std::make_pair(1000187003, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"),
1355 std::make_pair(1000187004, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT"),
1356 std::make_pair(1000187005, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT"),
1357 std::make_pair(1000187006, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT"),
1358 std::make_pair(1000189000, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD"),
1359 std::make_pair(1000190000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT"),
1360 std::make_pair(1000190001, "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT"),
1361 std::make_pair(1000190002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT"),
1362 std::make_pair(1000191000, "VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP"),
1363 std::make_pair(1000192000, "VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT"),
1364 std::make_pair(1000201000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV"),
1365 std::make_pair(1000202000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV"),
1366 std::make_pair(1000202001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV"),
1367 std::make_pair(1000203000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV"),
1368 std::make_pair(1000204000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV"),
1369 std::make_pair(1000205000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV"),
1370 std::make_pair(1000205002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV"),
1371 std::make_pair(1000206000, "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV"),
1372 std::make_pair(1000206001, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV"),
1373 std::make_pair(1000209000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL"),
1374 std::make_pair(1000210000, "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL"),
1375 std::make_pair(1000210001, "VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL"),
1376 std::make_pair(1000210002, "VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL"),
1377 std::make_pair(1000210003, "VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL"),
1378 std::make_pair(1000210004, "VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL"),
1379 std::make_pair(1000210005, "VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL"),
1380 std::make_pair(1000212000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT"),
1381 std::make_pair(1000213000, "VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD"),
1382 std::make_pair(1000213001, "VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD"),
1383 std::make_pair(1000214000, "VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA"),
1384 std::make_pair(1000215000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR"),
1385 std::make_pair(1000217000, "VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT"),
1386 std::make_pair(1000218000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT"),
1387 std::make_pair(1000218001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT"),
1388 std::make_pair(1000218002, "VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT"),
1389 std::make_pair(1000225000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT"),
1390 std::make_pair(1000225001, "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT"),
1391 std::make_pair(1000225002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT"),
1392 std::make_pair(1000226000, "VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR"),
1393 std::make_pair(1000226001, "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR"),
1394 std::make_pair(1000226002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR"),
1395 std::make_pair(1000226003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR"),
1396 std::make_pair(1000226004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR"),
1397 std::make_pair(1000227000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD"),
1398 std::make_pair(1000229000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD"),
1399 std::make_pair(1000234000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT"),
1400 std::make_pair(1000237000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT"),
1401 std::make_pair(1000238000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT"),
1402 std::make_pair(1000238001, "VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT"),
1403 std::make_pair(1000239000, "VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR"),
1404 std::make_pair(1000240000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV"),
1405 std::make_pair(1000244000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT"),
1406 std::make_pair(1000244002, "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT"),
1407 std::make_pair(1000245000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT"),
1408 std::make_pair(1000247000, "VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT"),
1409 std::make_pair(1000248000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR"),
1410 std::make_pair(1000249000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV"),
1411 std::make_pair(1000249001, "VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV"),
1412 std::make_pair(1000249002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV"),
1413 std::make_pair(1000250000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV"),
1414 std::make_pair(1000250001, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV"),
1415 std::make_pair(1000250002, "VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV"),
1416 std::make_pair(1000251000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT"),
1417 std::make_pair(1000252000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT"),
1418 std::make_pair(1000254000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT"),
1419 std::make_pair(1000254001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT"),
1420 std::make_pair(1000254002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT"),
1421 std::make_pair(1000255000, "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT"),
1422 std::make_pair(1000255002, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT"),
1423 std::make_pair(1000255001, "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT"),
1424 std::make_pair(1000256000, "VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT"),
1425 std::make_pair(1000259000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT"),
1426 std::make_pair(1000259001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT"),
1427 std::make_pair(1000259002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT"),
1428 std::make_pair(1000260000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT"),
1429 std::make_pair(1000265000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT"),
1430 std::make_pair(1000267000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT"),
1431 std::make_pair(1000269000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR"),
1432 std::make_pair(1000269001, "VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR"),
1433 std::make_pair(1000269002, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR"),
1434 std::make_pair(1000269003, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR"),
1435 std::make_pair(1000269004, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR"),
1436 std::make_pair(1000269005, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR"),
1437 std::make_pair(1000273000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT"),
1438 std::make_pair(1000276000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT"),
1439 std::make_pair(1000277000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV"),
1440 std::make_pair(1000277001, "VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV"),
1441 std::make_pair(1000277002, "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV"),
1442 std::make_pair(1000277003, "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV"),
1443 std::make_pair(1000277004, "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV"),
1444 std::make_pair(1000277005, "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV"),
1445 std::make_pair(1000277006, "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV"),
1446 std::make_pair(1000277007, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV"),
1447 std::make_pair(1000278000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV"),
1448 std::make_pair(1000278001, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV"),
1449 std::make_pair(1000280000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR"),
1450 std::make_pair(1000280001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR"),
1451 std::make_pair(1000281000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT"),
1452 std::make_pair(1000281001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT"),
1453 std::make_pair(1000282000, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM"),
1454 std::make_pair(1000282001, "VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM"),
1455 std::make_pair(1000284000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT"),
1456 std::make_pair(1000284001, "VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT"),
1457 std::make_pair(1000284002, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT"),
1458 std::make_pair(1000286000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT"),
1459 std::make_pair(1000286001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT"),
1460 std::make_pair(1000287000, "VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT"),
1461 std::make_pair(1000287001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT"),
1462 std::make_pair(1000287002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT"),
1463 std::make_pair(1000290000, "VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR"),
1464 std::make_pair(1000294000, "VK_STRUCTURE_TYPE_PRESENT_ID_KHR"),
1465 std::make_pair(1000294001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR"),
1466 std::make_pair(1000295000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT"),
1467 std::make_pair(1000295001, "VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT"),
1468 std::make_pair(1000295002, "VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT"),
1469 std::make_pair(1000297000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT"),
1470 std::make_pair(1000299000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR"),
1471 std::make_pair(1000299001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR"),
1472 std::make_pair(1000299002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR"),
1473 std::make_pair(1000300000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV"),
1474 std::make_pair(1000300001, "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV"),
1475 std::make_pair(1000308000, "VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR"),
1476 std::make_pair(1000309000, "VK_STRUCTURE_TYPE_RESERVED_QCOM"),
1477 std::make_pair(1000314000, "VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR"),
1478 std::make_pair(1000314001, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR"),
1479 std::make_pair(1000314002, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR"),
1480 std::make_pair(1000314003, "VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR"),
1481 std::make_pair(1000314004, "VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR"),
1482 std::make_pair(1000314005, "VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR"),
1483 std::make_pair(1000314006, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR"),
1484 std::make_pair(1000314007, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR"),
1485 std::make_pair(1000314008, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV"),
1486 std::make_pair(1000314009, "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV"),
1487 std::make_pair(1000323000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR"),
1488 std::make_pair(1000325000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR"),
1489 std::make_pair(1000326000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV"),
1490 std::make_pair(1000326001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV"),
1491 std::make_pair(1000326002, "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV"),
1492 std::make_pair(1000327000, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV"),
1493 std::make_pair(1000327001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV"),
1494 std::make_pair(1000327002, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV"),
1495 std::make_pair(1000330000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT"),
1496 std::make_pair(1000332000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT"),
1497 std::make_pair(1000332001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT"),
1498 std::make_pair(1000333000, "VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM"),
1499 std::make_pair(1000335000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT"),
1500 std::make_pair(1000336000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR"),
1501 std::make_pair(1000337000, "VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR"),
1502 std::make_pair(1000337001, "VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR"),
1503 std::make_pair(1000337002, "VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR"),
1504 std::make_pair(1000337003, "VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR"),
1505 std::make_pair(1000337004, "VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR"),
1506 std::make_pair(1000337005, "VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR"),
1507 std::make_pair(1000337006, "VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR"),
1508 std::make_pair(1000337007, "VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR"),
1509 std::make_pair(1000337008, "VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR"),
1510 std::make_pair(1000337009, "VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR"),
1511 std::make_pair(1000337010, "VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR"),
1512 std::make_pair(1000340000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT"),
1513 std::make_pair(1000342000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM"),
1514 std::make_pair(1000344000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT"),
1515 std::make_pair(1000346000, "VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT"),
1516 std::make_pair(1000351000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE"),
1517 std::make_pair(1000351002, "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE"),
1518 std::make_pair(1000352000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT"),
1519 std::make_pair(1000352001, "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT"),
1520 std::make_pair(1000352002, "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT"),
1521 std::make_pair(1000353000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT"),
1522 std::make_pair(1000355000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT"),
1523 std::make_pair(1000355001, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT"),
1524 std::make_pair(1000356000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT"),
1525 std::make_pair(1000360000, "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR"),
1526 std::make_pair(1000364000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA"),
1527 std::make_pair(1000364001, "VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA"),
1528 std::make_pair(1000364002, "VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA"),
1529 std::make_pair(1000365000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA"),
1530 std::make_pair(1000365001, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA"),
1531 std::make_pair(1000366000, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA"),
1532 std::make_pair(1000366001, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA"),
1533 std::make_pair(1000366002, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA"),
1534 std::make_pair(1000366003, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA"),
1535 std::make_pair(1000366004, "VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA"),
1536 std::make_pair(1000366005, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA"),
1537 std::make_pair(1000366006, "VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA"),
1538 std::make_pair(1000366007, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA"),
1539 std::make_pair(1000366008, "VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA"),
1540 std::make_pair(1000366009, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA"),
1541 std::make_pair(1000369000, "VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI"),
1542 std::make_pair(1000369001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI"),
1543 std::make_pair(1000369002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI"),
1544 std::make_pair(1000370000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI"),
1545 std::make_pair(1000371000, "VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV"),
1546 std::make_pair(1000371001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV"),
1547 std::make_pair(1000373000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV"),
1548 std::make_pair(1000373001, "VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV"),
1549 std::make_pair(1000373002, "VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV"),
1550 std::make_pair(1000373003, "VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV"),
1551 std::make_pair(1000373004, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_SCI_SYNC_INFO_NV"),
1552 std::make_pair(1000373005, "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_SCI_SYNC_INFO_NV"),
1553 std::make_pair(1000373006, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_SCI_SYNC_INFO_NV"),
1554 std::make_pair(1000373007, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_FEATURES_NV"),
1555 std::make_pair(1000374000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_SCI_BUF_INFO_NV"),
1556 std::make_pair(1000374001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_SCI_BUF_INFO_NV"),
1557 std::make_pair(1000374002, "VK_STRUCTURE_TYPE_MEMORY_GET_SCI_BUF_INFO_NV"),
1558 std::make_pair(1000374003, "VK_STRUCTURE_TYPE_MEMORY_SCI_BUF_PROPERTIES_NV"),
1559 std::make_pair(1000374004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV"),
1560 std::make_pair(1000377000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT"),
1561 std::make_pair(1000378000, "VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX"),
1562 std::make_pair(1000381000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT"),
1563 std::make_pair(1000381001, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT"),
1564 std::make_pair(1000388000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT"),
1565 std::make_pair(1000388001, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT"),
1566 std::make_pair(1000391000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT"),
1567 std::make_pair(1000391001, "VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT"),
1568 std::make_pair(1000392000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT"),
1569 std::make_pair(1000392001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT"),
1570 std::make_pair(1000411000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT"),
1571 std::make_pair(1000411001, "VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT"),
1572 std::make_pair(1000412000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT"),
1573 std::make_pair(1000413000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR"),
1574 std::make_pair(1000413001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR"),
1575 std::make_pair(1000413002, "VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR"),
1576 std::make_pair(1000413003, "VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR"),
1577 std::make_pair(1000435000, "VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT"),
1578 std::make_pair(1000489000, "VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV"),
1579 std::make_pair(1000489001, "VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV"),
1580 std::make_pair(1000489002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV"),
1581 std::make_pair(1000373000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV"),
1582 std::make_pair(1000373001, "VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV"),
1583 std::make_pair(1000373002, "VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV"),
1584 std::make_pair(1000373003, "VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV"),
1585 std::make_pair(1000489003, "VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV"),
1586 };
print_VkStructureType(VkStructureType obj,const std::string & str,bool commaNeeded=true)1587 static void print_VkStructureType(VkStructureType obj, const std::string &str, bool commaNeeded = true)
1588 {
1589 PRINT_SPACE
1590 if (str != "")
1591 _OUT << "\"" << str << "\""
1592 << " : ";
1593 if (commaNeeded)
1594 _OUT << "\"" << VkStructureType_map[obj] << "\"," << std::endl;
1595 else
1596 _OUT << "\"" << VkStructureType_map[obj] << "\"" << std::endl;
1597 }
print_VkStructureType(const VkStructureType * obj,const std::string & str,bool commaNeeded=true)1598 static void print_VkStructureType(const VkStructureType *obj, const std::string &str, bool commaNeeded = true)
1599 {
1600 PRINT_SPACE
1601 if (str != "")
1602 _OUT << "\"" << str << "\""
1603 << " : ";
1604 if (commaNeeded)
1605 _OUT << "\"" << VkStructureType_map[*obj] << "\"," << std::endl;
1606 else
1607 _OUT << "\"" << VkStructureType_map[*obj] << "\"" << std::endl;
1608 }
1609
1610 static std::map<uint64_t, std::string> VkAccessFlagBits_map = {
1611 std::make_pair(1ULL << 0, "VK_ACCESS_INDIRECT_COMMAND_READ_BIT"),
1612 std::make_pair(1ULL << 1, "VK_ACCESS_INDEX_READ_BIT"),
1613 std::make_pair(1ULL << 2, "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT"),
1614 std::make_pair(1ULL << 3, "VK_ACCESS_UNIFORM_READ_BIT"),
1615 std::make_pair(1ULL << 4, "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT"),
1616 std::make_pair(1ULL << 5, "VK_ACCESS_SHADER_READ_BIT"),
1617 std::make_pair(1ULL << 6, "VK_ACCESS_SHADER_WRITE_BIT"),
1618 std::make_pair(1ULL << 7, "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT"),
1619 std::make_pair(1ULL << 8, "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT"),
1620 std::make_pair(1ULL << 9, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT"),
1621 std::make_pair(1ULL << 10, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT"),
1622 std::make_pair(1ULL << 11, "VK_ACCESS_TRANSFER_READ_BIT"),
1623 std::make_pair(1ULL << 12, "VK_ACCESS_TRANSFER_WRITE_BIT"),
1624 std::make_pair(1ULL << 13, "VK_ACCESS_HOST_READ_BIT"),
1625 std::make_pair(1ULL << 14, "VK_ACCESS_HOST_WRITE_BIT"),
1626 std::make_pair(1ULL << 15, "VK_ACCESS_MEMORY_READ_BIT"),
1627 std::make_pair(1ULL << 16, "VK_ACCESS_MEMORY_WRITE_BIT"),
1628 std::make_pair(1ULL << 25, "VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT"),
1629 std::make_pair(1ULL << 26, "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT"),
1630 std::make_pair(1ULL << 27, "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT"),
1631 std::make_pair(1ULL << 20, "VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT"),
1632 std::make_pair(1ULL << 19, "VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT"),
1633 std::make_pair(1ULL << 21, "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR"),
1634 std::make_pair(1ULL << 22, "VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR"),
1635 std::make_pair(1ULL << 24, "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT"),
1636 std::make_pair(1ULL << 23, "VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR"),
1637 std::make_pair(1ULL << 17, "VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV"),
1638 std::make_pair(1ULL << 18, "VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV"),
1639 std::make_pair(0, "VK_ACCESS_NONE_KHR"),
1640 };
print_VkAccessFlagBits(VkAccessFlagBits obj,const std::string & str,bool commaNeeded=true)1641 static void print_VkAccessFlagBits(VkAccessFlagBits obj, const std::string &str, bool commaNeeded = true)
1642 {
1643 PRINT_SPACE
1644 if (str != "")
1645 _OUT << "\"" << str << "\""
1646 << " : ";
1647 if (commaNeeded)
1648 _OUT << "\"" << VkAccessFlagBits_map[obj] << "\"," << std::endl;
1649 else
1650 _OUT << "\"" << VkAccessFlagBits_map[obj] << "\"" << std::endl;
1651 }
print_VkAccessFlagBits(const VkAccessFlagBits * obj,const std::string & str,bool commaNeeded=true)1652 static void print_VkAccessFlagBits(const VkAccessFlagBits *obj, const std::string &str, bool commaNeeded = true)
1653 {
1654 PRINT_SPACE
1655 if (str != "")
1656 _OUT << "\"" << str << "\""
1657 << " : ";
1658 if (commaNeeded)
1659 _OUT << "\"" << VkAccessFlagBits_map[*obj] << "\"," << std::endl;
1660 else
1661 _OUT << "\"" << VkAccessFlagBits_map[*obj] << "\"" << std::endl;
1662 }
1663
1664 static std::map<uint64_t, std::string> VkImageLayout_map = {
1665 std::make_pair(0, "VK_IMAGE_LAYOUT_UNDEFINED"),
1666 std::make_pair(1, "VK_IMAGE_LAYOUT_GENERAL"),
1667 std::make_pair(2, "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL"),
1668 std::make_pair(3, "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL"),
1669 std::make_pair(4, "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL"),
1670 std::make_pair(5, "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL"),
1671 std::make_pair(6, "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL"),
1672 std::make_pair(7, "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL"),
1673 std::make_pair(8, "VK_IMAGE_LAYOUT_PREINITIALIZED"),
1674 std::make_pair(1000117000, "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL"),
1675 std::make_pair(1000117001, "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL"),
1676 std::make_pair(1000241000, "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL"),
1677 std::make_pair(1000241001, "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL"),
1678 std::make_pair(1000241002, "VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL"),
1679 std::make_pair(1000241003, "VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL"),
1680 std::make_pair(1000001002, "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR"),
1681 std::make_pair(1000024000, "VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR"),
1682 std::make_pair(1000024001, "VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR"),
1683 std::make_pair(1000024002, "VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR"),
1684 std::make_pair(1000111000, "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR"),
1685 std::make_pair(1000218000, "VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT"),
1686 std::make_pair(1000164003, "VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR"),
1687 std::make_pair(1000299000, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR"),
1688 std::make_pair(1000299001, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR"),
1689 std::make_pair(1000299002, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR"),
1690 std::make_pair(1000314000, "VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR"),
1691 std::make_pair(1000314001, "VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR"),
1692 };
print_VkImageLayout(VkImageLayout obj,const std::string & str,bool commaNeeded=true)1693 static void print_VkImageLayout(VkImageLayout obj, const std::string &str, bool commaNeeded = true)
1694 {
1695 PRINT_SPACE
1696 if (str != "")
1697 _OUT << "\"" << str << "\""
1698 << " : ";
1699 if (commaNeeded)
1700 _OUT << "\"" << VkImageLayout_map[obj] << "\"," << std::endl;
1701 else
1702 _OUT << "\"" << VkImageLayout_map[obj] << "\"" << std::endl;
1703 }
print_VkImageLayout(const VkImageLayout * obj,const std::string & str,bool commaNeeded=true)1704 static void print_VkImageLayout(const VkImageLayout *obj, const std::string &str, bool commaNeeded = true)
1705 {
1706 PRINT_SPACE
1707 if (str != "")
1708 _OUT << "\"" << str << "\""
1709 << " : ";
1710 if (commaNeeded)
1711 _OUT << "\"" << VkImageLayout_map[*obj] << "\"," << std::endl;
1712 else
1713 _OUT << "\"" << VkImageLayout_map[*obj] << "\"" << std::endl;
1714 }
1715
1716 static std::map<uint64_t, std::string> VkImageAspectFlagBits_map = {
1717 std::make_pair(1ULL << 0, "VK_IMAGE_ASPECT_COLOR_BIT"),
1718 std::make_pair(1ULL << 1, "VK_IMAGE_ASPECT_DEPTH_BIT"),
1719 std::make_pair(1ULL << 2, "VK_IMAGE_ASPECT_STENCIL_BIT"),
1720 std::make_pair(1ULL << 3, "VK_IMAGE_ASPECT_METADATA_BIT"),
1721 std::make_pair(1ULL << 4, "VK_IMAGE_ASPECT_PLANE_0_BIT"),
1722 std::make_pair(1ULL << 5, "VK_IMAGE_ASPECT_PLANE_1_BIT"),
1723 std::make_pair(1ULL << 6, "VK_IMAGE_ASPECT_PLANE_2_BIT"),
1724 std::make_pair(1ULL << 7, "VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT"),
1725 std::make_pair(1ULL << 8, "VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT"),
1726 std::make_pair(1ULL << 9, "VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT"),
1727 std::make_pair(1ULL << 10, "VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT"),
1728 std::make_pair(0, "VK_IMAGE_ASPECT_NONE_KHR"),
1729 };
print_VkImageAspectFlagBits(VkImageAspectFlagBits obj,const std::string & str,bool commaNeeded=true)1730 static void print_VkImageAspectFlagBits(VkImageAspectFlagBits obj, const std::string &str, bool commaNeeded = true)
1731 {
1732 PRINT_SPACE
1733 if (str != "")
1734 _OUT << "\"" << str << "\""
1735 << " : ";
1736 if (commaNeeded)
1737 _OUT << "\"" << VkImageAspectFlagBits_map[obj] << "\"," << std::endl;
1738 else
1739 _OUT << "\"" << VkImageAspectFlagBits_map[obj] << "\"" << std::endl;
1740 }
print_VkImageAspectFlagBits(const VkImageAspectFlagBits * obj,const std::string & str,bool commaNeeded=true)1741 static void print_VkImageAspectFlagBits(const VkImageAspectFlagBits *obj, const std::string &str,
1742 bool commaNeeded = true)
1743 {
1744 PRINT_SPACE
1745 if (str != "")
1746 _OUT << "\"" << str << "\""
1747 << " : ";
1748 if (commaNeeded)
1749 _OUT << "\"" << VkImageAspectFlagBits_map[*obj] << "\"," << std::endl;
1750 else
1751 _OUT << "\"" << VkImageAspectFlagBits_map[*obj] << "\"" << std::endl;
1752 }
1753
1754 static std::map<uint64_t, std::string> VkObjectType_map = {
1755 std::make_pair(0, "VK_OBJECT_TYPE_UNKNOWN"),
1756 std::make_pair(1, "VK_OBJECT_TYPE_INSTANCE"),
1757 std::make_pair(2, "VK_OBJECT_TYPE_PHYSICAL_DEVICE"),
1758 std::make_pair(3, "VK_OBJECT_TYPE_DEVICE"),
1759 std::make_pair(4, "VK_OBJECT_TYPE_QUEUE"),
1760 std::make_pair(5, "VK_OBJECT_TYPE_SEMAPHORE"),
1761 std::make_pair(6, "VK_OBJECT_TYPE_COMMAND_BUFFER"),
1762 std::make_pair(7, "VK_OBJECT_TYPE_FENCE"),
1763 std::make_pair(8, "VK_OBJECT_TYPE_DEVICE_MEMORY"),
1764 std::make_pair(9, "VK_OBJECT_TYPE_BUFFER"),
1765 std::make_pair(10, "VK_OBJECT_TYPE_IMAGE"),
1766 std::make_pair(11, "VK_OBJECT_TYPE_EVENT"),
1767 std::make_pair(12, "VK_OBJECT_TYPE_QUERY_POOL"),
1768 std::make_pair(13, "VK_OBJECT_TYPE_BUFFER_VIEW"),
1769 std::make_pair(14, "VK_OBJECT_TYPE_IMAGE_VIEW"),
1770 std::make_pair(15, "VK_OBJECT_TYPE_SHADER_MODULE"),
1771 std::make_pair(16, "VK_OBJECT_TYPE_PIPELINE_CACHE"),
1772 std::make_pair(17, "VK_OBJECT_TYPE_PIPELINE_LAYOUT"),
1773 std::make_pair(18, "VK_OBJECT_TYPE_RENDER_PASS"),
1774 std::make_pair(19, "VK_OBJECT_TYPE_PIPELINE"),
1775 std::make_pair(20, "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT"),
1776 std::make_pair(21, "VK_OBJECT_TYPE_SAMPLER"),
1777 std::make_pair(22, "VK_OBJECT_TYPE_DESCRIPTOR_POOL"),
1778 std::make_pair(23, "VK_OBJECT_TYPE_DESCRIPTOR_SET"),
1779 std::make_pair(24, "VK_OBJECT_TYPE_FRAMEBUFFER"),
1780 std::make_pair(25, "VK_OBJECT_TYPE_COMMAND_POOL"),
1781 std::make_pair(1000156000, "VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION"),
1782 std::make_pair(1000000000, "VK_OBJECT_TYPE_SURFACE_KHR"),
1783 std::make_pair(1000001000, "VK_OBJECT_TYPE_SWAPCHAIN_KHR"),
1784 std::make_pair(1000002000, "VK_OBJECT_TYPE_DISPLAY_KHR"),
1785 std::make_pair(1000002001, "VK_OBJECT_TYPE_DISPLAY_MODE_KHR"),
1786 std::make_pair(1000011000, "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT"),
1787 std::make_pair(1000023000, "VK_OBJECT_TYPE_VIDEO_SESSION_KHR"),
1788 std::make_pair(1000023001, "VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR"),
1789 std::make_pair(1000029000, "VK_OBJECT_TYPE_CU_MODULE_NVX"),
1790 std::make_pair(1000029001, "VK_OBJECT_TYPE_CU_FUNCTION_NVX"),
1791 std::make_pair(1000128000, "VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT"),
1792 std::make_pair(1000150000, "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"),
1793 std::make_pair(1000160000, "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT"),
1794 std::make_pair(1000165000, "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV"),
1795 std::make_pair(1000210000, "VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL"),
1796 std::make_pair(1000268000, "VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR"),
1797 std::make_pair(1000277000, "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV"),
1798 std::make_pair(1000295000, "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT"),
1799 std::make_pair(1000366000, "VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA"),
1800 std::make_pair(1000489000, "VK_OBJECT_TYPE_SEMAPHORE_SCI_SYNC_POOL_NV"),
1801 };
print_VkObjectType(VkObjectType obj,const std::string & str,bool commaNeeded=true)1802 static void print_VkObjectType(VkObjectType obj, const std::string &str, bool commaNeeded = true)
1803 {
1804 PRINT_SPACE
1805 if (str != "")
1806 _OUT << "\"" << str << "\""
1807 << " : ";
1808 if (commaNeeded)
1809 _OUT << "\"" << VkObjectType_map[obj] << "\"," << std::endl;
1810 else
1811 _OUT << "\"" << VkObjectType_map[obj] << "\"" << std::endl;
1812 }
print_VkObjectType(const VkObjectType * obj,const std::string & str,bool commaNeeded=true)1813 static void print_VkObjectType(const VkObjectType *obj, const std::string &str, bool commaNeeded = true)
1814 {
1815 PRINT_SPACE
1816 if (str != "")
1817 _OUT << "\"" << str << "\""
1818 << " : ";
1819 if (commaNeeded)
1820 _OUT << "\"" << VkObjectType_map[*obj] << "\"," << std::endl;
1821 else
1822 _OUT << "\"" << VkObjectType_map[*obj] << "\"" << std::endl;
1823 }
1824
1825 static std::map<uint64_t, std::string> VkPipelineCacheHeaderVersion_map = {
1826 std::make_pair(1, "VK_PIPELINE_CACHE_HEADER_VERSION_ONE"),
1827 std::make_pair(1000298001, "VK_PIPELINE_CACHE_HEADER_VERSION_SAFETY_CRITICAL_ONE"),
1828 };
print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj,const std::string & str,bool commaNeeded=true)1829 static void print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj, const std::string &str,
1830 bool commaNeeded = true)
1831 {
1832 PRINT_SPACE
1833 if (str != "")
1834 _OUT << "\"" << str << "\""
1835 << " : ";
1836 if (commaNeeded)
1837 _OUT << "\"" << VkPipelineCacheHeaderVersion_map[obj] << "\"," << std::endl;
1838 else
1839 _OUT << "\"" << VkPipelineCacheHeaderVersion_map[obj] << "\"" << std::endl;
1840 }
print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion * obj,const std::string & str,bool commaNeeded=true)1841 static void print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion *obj, const std::string &str,
1842 bool commaNeeded = true)
1843 {
1844 PRINT_SPACE
1845 if (str != "")
1846 _OUT << "\"" << str << "\""
1847 << " : ";
1848 if (commaNeeded)
1849 _OUT << "\"" << VkPipelineCacheHeaderVersion_map[*obj] << "\"," << std::endl;
1850 else
1851 _OUT << "\"" << VkPipelineCacheHeaderVersion_map[*obj] << "\"" << std::endl;
1852 }
1853
1854 static std::map<uint64_t, std::string> VkVendorId_map = {
1855 std::make_pair(0x10001, "VK_VENDOR_ID_VIV"), std::make_pair(0x10002, "VK_VENDOR_ID_VSI"),
1856 std::make_pair(0x10003, "VK_VENDOR_ID_KAZAN"), std::make_pair(0x10004, "VK_VENDOR_ID_CODEPLAY"),
1857 std::make_pair(0x10005, "VK_VENDOR_ID_MESA"), std::make_pair(0x10006, "VK_VENDOR_ID_POCL"),
1858 };
print_VkVendorId(VkVendorId obj,const std::string & str,bool commaNeeded=true)1859 static void print_VkVendorId(VkVendorId obj, const std::string &str, bool commaNeeded = true)
1860 {
1861 PRINT_SPACE
1862 if (str != "")
1863 _OUT << "\"" << str << "\""
1864 << " : ";
1865 if (commaNeeded)
1866 _OUT << "\"" << VkVendorId_map[obj] << "\"," << std::endl;
1867 else
1868 _OUT << "\"" << VkVendorId_map[obj] << "\"" << std::endl;
1869 }
print_VkVendorId(const VkVendorId * obj,const std::string & str,bool commaNeeded=true)1870 static void print_VkVendorId(const VkVendorId *obj, const std::string &str, bool commaNeeded = true)
1871 {
1872 PRINT_SPACE
1873 if (str != "")
1874 _OUT << "\"" << str << "\""
1875 << " : ";
1876 if (commaNeeded)
1877 _OUT << "\"" << VkVendorId_map[*obj] << "\"," << std::endl;
1878 else
1879 _OUT << "\"" << VkVendorId_map[*obj] << "\"" << std::endl;
1880 }
1881
1882 static std::map<uint64_t, std::string> VkSystemAllocationScope_map = {
1883 std::make_pair(0, "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND"), std::make_pair(1, "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT"),
1884 std::make_pair(2, "VK_SYSTEM_ALLOCATION_SCOPE_CACHE"), std::make_pair(3, "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE"),
1885 std::make_pair(4, "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE"),
1886 };
print_VkSystemAllocationScope(VkSystemAllocationScope obj,const std::string & str,bool commaNeeded=true)1887 static void print_VkSystemAllocationScope(VkSystemAllocationScope obj, const std::string &str, bool commaNeeded = true)
1888 {
1889 PRINT_SPACE
1890 if (str != "")
1891 _OUT << "\"" << str << "\""
1892 << " : ";
1893 if (commaNeeded)
1894 _OUT << "\"" << VkSystemAllocationScope_map[obj] << "\"," << std::endl;
1895 else
1896 _OUT << "\"" << VkSystemAllocationScope_map[obj] << "\"" << std::endl;
1897 }
print_VkSystemAllocationScope(const VkSystemAllocationScope * obj,const std::string & str,bool commaNeeded=true)1898 static void print_VkSystemAllocationScope(const VkSystemAllocationScope *obj, const std::string &str,
1899 bool commaNeeded = true)
1900 {
1901 PRINT_SPACE
1902 if (str != "")
1903 _OUT << "\"" << str << "\""
1904 << " : ";
1905 if (commaNeeded)
1906 _OUT << "\"" << VkSystemAllocationScope_map[*obj] << "\"," << std::endl;
1907 else
1908 _OUT << "\"" << VkSystemAllocationScope_map[*obj] << "\"" << std::endl;
1909 }
1910
1911 static std::map<uint64_t, std::string> VkInternalAllocationType_map = {
1912 std::make_pair(0, "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE"),
1913 };
print_VkInternalAllocationType(VkInternalAllocationType obj,const std::string & str,bool commaNeeded=true)1914 static void print_VkInternalAllocationType(VkInternalAllocationType obj, const std::string &str,
1915 bool commaNeeded = true)
1916 {
1917 PRINT_SPACE
1918 if (str != "")
1919 _OUT << "\"" << str << "\""
1920 << " : ";
1921 if (commaNeeded)
1922 _OUT << "\"" << VkInternalAllocationType_map[obj] << "\"," << std::endl;
1923 else
1924 _OUT << "\"" << VkInternalAllocationType_map[obj] << "\"" << std::endl;
1925 }
print_VkInternalAllocationType(const VkInternalAllocationType * obj,const std::string & str,bool commaNeeded=true)1926 static void print_VkInternalAllocationType(const VkInternalAllocationType *obj, const std::string &str,
1927 bool commaNeeded = true)
1928 {
1929 PRINT_SPACE
1930 if (str != "")
1931 _OUT << "\"" << str << "\""
1932 << " : ";
1933 if (commaNeeded)
1934 _OUT << "\"" << VkInternalAllocationType_map[*obj] << "\"," << std::endl;
1935 else
1936 _OUT << "\"" << VkInternalAllocationType_map[*obj] << "\"" << std::endl;
1937 }
1938
1939 static std::map<uint64_t, std::string> VkFormat_map = {
1940 std::make_pair(0, "VK_FORMAT_UNDEFINED"),
1941 std::make_pair(1, "VK_FORMAT_R4G4_UNORM_PACK8"),
1942 std::make_pair(2, "VK_FORMAT_R4G4B4A4_UNORM_PACK16"),
1943 std::make_pair(3, "VK_FORMAT_B4G4R4A4_UNORM_PACK16"),
1944 std::make_pair(4, "VK_FORMAT_R5G6B5_UNORM_PACK16"),
1945 std::make_pair(5, "VK_FORMAT_B5G6R5_UNORM_PACK16"),
1946 std::make_pair(6, "VK_FORMAT_R5G5B5A1_UNORM_PACK16"),
1947 std::make_pair(7, "VK_FORMAT_B5G5R5A1_UNORM_PACK16"),
1948 std::make_pair(8, "VK_FORMAT_A1R5G5B5_UNORM_PACK16"),
1949 std::make_pair(9, "VK_FORMAT_R8_UNORM"),
1950 std::make_pair(10, "VK_FORMAT_R8_SNORM"),
1951 std::make_pair(11, "VK_FORMAT_R8_USCALED"),
1952 std::make_pair(12, "VK_FORMAT_R8_SSCALED"),
1953 std::make_pair(13, "VK_FORMAT_R8_UINT"),
1954 std::make_pair(14, "VK_FORMAT_R8_SINT"),
1955 std::make_pair(15, "VK_FORMAT_R8_SRGB"),
1956 std::make_pair(16, "VK_FORMAT_R8G8_UNORM"),
1957 std::make_pair(17, "VK_FORMAT_R8G8_SNORM"),
1958 std::make_pair(18, "VK_FORMAT_R8G8_USCALED"),
1959 std::make_pair(19, "VK_FORMAT_R8G8_SSCALED"),
1960 std::make_pair(20, "VK_FORMAT_R8G8_UINT"),
1961 std::make_pair(21, "VK_FORMAT_R8G8_SINT"),
1962 std::make_pair(22, "VK_FORMAT_R8G8_SRGB"),
1963 std::make_pair(23, "VK_FORMAT_R8G8B8_UNORM"),
1964 std::make_pair(24, "VK_FORMAT_R8G8B8_SNORM"),
1965 std::make_pair(25, "VK_FORMAT_R8G8B8_USCALED"),
1966 std::make_pair(26, "VK_FORMAT_R8G8B8_SSCALED"),
1967 std::make_pair(27, "VK_FORMAT_R8G8B8_UINT"),
1968 std::make_pair(28, "VK_FORMAT_R8G8B8_SINT"),
1969 std::make_pair(29, "VK_FORMAT_R8G8B8_SRGB"),
1970 std::make_pair(30, "VK_FORMAT_B8G8R8_UNORM"),
1971 std::make_pair(31, "VK_FORMAT_B8G8R8_SNORM"),
1972 std::make_pair(32, "VK_FORMAT_B8G8R8_USCALED"),
1973 std::make_pair(33, "VK_FORMAT_B8G8R8_SSCALED"),
1974 std::make_pair(34, "VK_FORMAT_B8G8R8_UINT"),
1975 std::make_pair(35, "VK_FORMAT_B8G8R8_SINT"),
1976 std::make_pair(36, "VK_FORMAT_B8G8R8_SRGB"),
1977 std::make_pair(37, "VK_FORMAT_R8G8B8A8_UNORM"),
1978 std::make_pair(38, "VK_FORMAT_R8G8B8A8_SNORM"),
1979 std::make_pair(39, "VK_FORMAT_R8G8B8A8_USCALED"),
1980 std::make_pair(40, "VK_FORMAT_R8G8B8A8_SSCALED"),
1981 std::make_pair(41, "VK_FORMAT_R8G8B8A8_UINT"),
1982 std::make_pair(42, "VK_FORMAT_R8G8B8A8_SINT"),
1983 std::make_pair(43, "VK_FORMAT_R8G8B8A8_SRGB"),
1984 std::make_pair(44, "VK_FORMAT_B8G8R8A8_UNORM"),
1985 std::make_pair(45, "VK_FORMAT_B8G8R8A8_SNORM"),
1986 std::make_pair(46, "VK_FORMAT_B8G8R8A8_USCALED"),
1987 std::make_pair(47, "VK_FORMAT_B8G8R8A8_SSCALED"),
1988 std::make_pair(48, "VK_FORMAT_B8G8R8A8_UINT"),
1989 std::make_pair(49, "VK_FORMAT_B8G8R8A8_SINT"),
1990 std::make_pair(50, "VK_FORMAT_B8G8R8A8_SRGB"),
1991 std::make_pair(51, "VK_FORMAT_A8B8G8R8_UNORM_PACK32"),
1992 std::make_pair(52, "VK_FORMAT_A8B8G8R8_SNORM_PACK32"),
1993 std::make_pair(53, "VK_FORMAT_A8B8G8R8_USCALED_PACK32"),
1994 std::make_pair(54, "VK_FORMAT_A8B8G8R8_SSCALED_PACK32"),
1995 std::make_pair(55, "VK_FORMAT_A8B8G8R8_UINT_PACK32"),
1996 std::make_pair(56, "VK_FORMAT_A8B8G8R8_SINT_PACK32"),
1997 std::make_pair(57, "VK_FORMAT_A8B8G8R8_SRGB_PACK32"),
1998 std::make_pair(58, "VK_FORMAT_A2R10G10B10_UNORM_PACK32"),
1999 std::make_pair(59, "VK_FORMAT_A2R10G10B10_SNORM_PACK32"),
2000 std::make_pair(60, "VK_FORMAT_A2R10G10B10_USCALED_PACK32"),
2001 std::make_pair(61, "VK_FORMAT_A2R10G10B10_SSCALED_PACK32"),
2002 std::make_pair(62, "VK_FORMAT_A2R10G10B10_UINT_PACK32"),
2003 std::make_pair(63, "VK_FORMAT_A2R10G10B10_SINT_PACK32"),
2004 std::make_pair(64, "VK_FORMAT_A2B10G10R10_UNORM_PACK32"),
2005 std::make_pair(65, "VK_FORMAT_A2B10G10R10_SNORM_PACK32"),
2006 std::make_pair(66, "VK_FORMAT_A2B10G10R10_USCALED_PACK32"),
2007 std::make_pair(67, "VK_FORMAT_A2B10G10R10_SSCALED_PACK32"),
2008 std::make_pair(68, "VK_FORMAT_A2B10G10R10_UINT_PACK32"),
2009 std::make_pair(69, "VK_FORMAT_A2B10G10R10_SINT_PACK32"),
2010 std::make_pair(70, "VK_FORMAT_R16_UNORM"),
2011 std::make_pair(71, "VK_FORMAT_R16_SNORM"),
2012 std::make_pair(72, "VK_FORMAT_R16_USCALED"),
2013 std::make_pair(73, "VK_FORMAT_R16_SSCALED"),
2014 std::make_pair(74, "VK_FORMAT_R16_UINT"),
2015 std::make_pair(75, "VK_FORMAT_R16_SINT"),
2016 std::make_pair(76, "VK_FORMAT_R16_SFLOAT"),
2017 std::make_pair(77, "VK_FORMAT_R16G16_UNORM"),
2018 std::make_pair(78, "VK_FORMAT_R16G16_SNORM"),
2019 std::make_pair(79, "VK_FORMAT_R16G16_USCALED"),
2020 std::make_pair(80, "VK_FORMAT_R16G16_SSCALED"),
2021 std::make_pair(81, "VK_FORMAT_R16G16_UINT"),
2022 std::make_pair(82, "VK_FORMAT_R16G16_SINT"),
2023 std::make_pair(83, "VK_FORMAT_R16G16_SFLOAT"),
2024 std::make_pair(84, "VK_FORMAT_R16G16B16_UNORM"),
2025 std::make_pair(85, "VK_FORMAT_R16G16B16_SNORM"),
2026 std::make_pair(86, "VK_FORMAT_R16G16B16_USCALED"),
2027 std::make_pair(87, "VK_FORMAT_R16G16B16_SSCALED"),
2028 std::make_pair(88, "VK_FORMAT_R16G16B16_UINT"),
2029 std::make_pair(89, "VK_FORMAT_R16G16B16_SINT"),
2030 std::make_pair(90, "VK_FORMAT_R16G16B16_SFLOAT"),
2031 std::make_pair(91, "VK_FORMAT_R16G16B16A16_UNORM"),
2032 std::make_pair(92, "VK_FORMAT_R16G16B16A16_SNORM"),
2033 std::make_pair(93, "VK_FORMAT_R16G16B16A16_USCALED"),
2034 std::make_pair(94, "VK_FORMAT_R16G16B16A16_SSCALED"),
2035 std::make_pair(95, "VK_FORMAT_R16G16B16A16_UINT"),
2036 std::make_pair(96, "VK_FORMAT_R16G16B16A16_SINT"),
2037 std::make_pair(97, "VK_FORMAT_R16G16B16A16_SFLOAT"),
2038 std::make_pair(98, "VK_FORMAT_R32_UINT"),
2039 std::make_pair(99, "VK_FORMAT_R32_SINT"),
2040 std::make_pair(100, "VK_FORMAT_R32_SFLOAT"),
2041 std::make_pair(101, "VK_FORMAT_R32G32_UINT"),
2042 std::make_pair(102, "VK_FORMAT_R32G32_SINT"),
2043 std::make_pair(103, "VK_FORMAT_R32G32_SFLOAT"),
2044 std::make_pair(104, "VK_FORMAT_R32G32B32_UINT"),
2045 std::make_pair(105, "VK_FORMAT_R32G32B32_SINT"),
2046 std::make_pair(106, "VK_FORMAT_R32G32B32_SFLOAT"),
2047 std::make_pair(107, "VK_FORMAT_R32G32B32A32_UINT"),
2048 std::make_pair(108, "VK_FORMAT_R32G32B32A32_SINT"),
2049 std::make_pair(109, "VK_FORMAT_R32G32B32A32_SFLOAT"),
2050 std::make_pair(110, "VK_FORMAT_R64_UINT"),
2051 std::make_pair(111, "VK_FORMAT_R64_SINT"),
2052 std::make_pair(112, "VK_FORMAT_R64_SFLOAT"),
2053 std::make_pair(113, "VK_FORMAT_R64G64_UINT"),
2054 std::make_pair(114, "VK_FORMAT_R64G64_SINT"),
2055 std::make_pair(115, "VK_FORMAT_R64G64_SFLOAT"),
2056 std::make_pair(116, "VK_FORMAT_R64G64B64_UINT"),
2057 std::make_pair(117, "VK_FORMAT_R64G64B64_SINT"),
2058 std::make_pair(118, "VK_FORMAT_R64G64B64_SFLOAT"),
2059 std::make_pair(119, "VK_FORMAT_R64G64B64A64_UINT"),
2060 std::make_pair(120, "VK_FORMAT_R64G64B64A64_SINT"),
2061 std::make_pair(121, "VK_FORMAT_R64G64B64A64_SFLOAT"),
2062 std::make_pair(122, "VK_FORMAT_B10G11R11_UFLOAT_PACK32"),
2063 std::make_pair(123, "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32"),
2064 std::make_pair(124, "VK_FORMAT_D16_UNORM"),
2065 std::make_pair(125, "VK_FORMAT_X8_D24_UNORM_PACK32"),
2066 std::make_pair(126, "VK_FORMAT_D32_SFLOAT"),
2067 std::make_pair(127, "VK_FORMAT_S8_UINT"),
2068 std::make_pair(128, "VK_FORMAT_D16_UNORM_S8_UINT"),
2069 std::make_pair(129, "VK_FORMAT_D24_UNORM_S8_UINT"),
2070 std::make_pair(130, "VK_FORMAT_D32_SFLOAT_S8_UINT"),
2071 std::make_pair(131, "VK_FORMAT_BC1_RGB_UNORM_BLOCK"),
2072 std::make_pair(132, "VK_FORMAT_BC1_RGB_SRGB_BLOCK"),
2073 std::make_pair(133, "VK_FORMAT_BC1_RGBA_UNORM_BLOCK"),
2074 std::make_pair(134, "VK_FORMAT_BC1_RGBA_SRGB_BLOCK"),
2075 std::make_pair(135, "VK_FORMAT_BC2_UNORM_BLOCK"),
2076 std::make_pair(136, "VK_FORMAT_BC2_SRGB_BLOCK"),
2077 std::make_pair(137, "VK_FORMAT_BC3_UNORM_BLOCK"),
2078 std::make_pair(138, "VK_FORMAT_BC3_SRGB_BLOCK"),
2079 std::make_pair(139, "VK_FORMAT_BC4_UNORM_BLOCK"),
2080 std::make_pair(140, "VK_FORMAT_BC4_SNORM_BLOCK"),
2081 std::make_pair(141, "VK_FORMAT_BC5_UNORM_BLOCK"),
2082 std::make_pair(142, "VK_FORMAT_BC5_SNORM_BLOCK"),
2083 std::make_pair(143, "VK_FORMAT_BC6H_UFLOAT_BLOCK"),
2084 std::make_pair(144, "VK_FORMAT_BC6H_SFLOAT_BLOCK"),
2085 std::make_pair(145, "VK_FORMAT_BC7_UNORM_BLOCK"),
2086 std::make_pair(146, "VK_FORMAT_BC7_SRGB_BLOCK"),
2087 std::make_pair(147, "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK"),
2088 std::make_pair(148, "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK"),
2089 std::make_pair(149, "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK"),
2090 std::make_pair(150, "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK"),
2091 std::make_pair(151, "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK"),
2092 std::make_pair(152, "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK"),
2093 std::make_pair(153, "VK_FORMAT_EAC_R11_UNORM_BLOCK"),
2094 std::make_pair(154, "VK_FORMAT_EAC_R11_SNORM_BLOCK"),
2095 std::make_pair(155, "VK_FORMAT_EAC_R11G11_UNORM_BLOCK"),
2096 std::make_pair(156, "VK_FORMAT_EAC_R11G11_SNORM_BLOCK"),
2097 std::make_pair(157, "VK_FORMAT_ASTC_4x4_UNORM_BLOCK"),
2098 std::make_pair(158, "VK_FORMAT_ASTC_4x4_SRGB_BLOCK"),
2099 std::make_pair(159, "VK_FORMAT_ASTC_5x4_UNORM_BLOCK"),
2100 std::make_pair(160, "VK_FORMAT_ASTC_5x4_SRGB_BLOCK"),
2101 std::make_pair(161, "VK_FORMAT_ASTC_5x5_UNORM_BLOCK"),
2102 std::make_pair(162, "VK_FORMAT_ASTC_5x5_SRGB_BLOCK"),
2103 std::make_pair(163, "VK_FORMAT_ASTC_6x5_UNORM_BLOCK"),
2104 std::make_pair(164, "VK_FORMAT_ASTC_6x5_SRGB_BLOCK"),
2105 std::make_pair(165, "VK_FORMAT_ASTC_6x6_UNORM_BLOCK"),
2106 std::make_pair(166, "VK_FORMAT_ASTC_6x6_SRGB_BLOCK"),
2107 std::make_pair(167, "VK_FORMAT_ASTC_8x5_UNORM_BLOCK"),
2108 std::make_pair(168, "VK_FORMAT_ASTC_8x5_SRGB_BLOCK"),
2109 std::make_pair(169, "VK_FORMAT_ASTC_8x6_UNORM_BLOCK"),
2110 std::make_pair(170, "VK_FORMAT_ASTC_8x6_SRGB_BLOCK"),
2111 std::make_pair(171, "VK_FORMAT_ASTC_8x8_UNORM_BLOCK"),
2112 std::make_pair(172, "VK_FORMAT_ASTC_8x8_SRGB_BLOCK"),
2113 std::make_pair(173, "VK_FORMAT_ASTC_10x5_UNORM_BLOCK"),
2114 std::make_pair(174, "VK_FORMAT_ASTC_10x5_SRGB_BLOCK"),
2115 std::make_pair(175, "VK_FORMAT_ASTC_10x6_UNORM_BLOCK"),
2116 std::make_pair(176, "VK_FORMAT_ASTC_10x6_SRGB_BLOCK"),
2117 std::make_pair(177, "VK_FORMAT_ASTC_10x8_UNORM_BLOCK"),
2118 std::make_pair(178, "VK_FORMAT_ASTC_10x8_SRGB_BLOCK"),
2119 std::make_pair(179, "VK_FORMAT_ASTC_10x10_UNORM_BLOCK"),
2120 std::make_pair(180, "VK_FORMAT_ASTC_10x10_SRGB_BLOCK"),
2121 std::make_pair(181, "VK_FORMAT_ASTC_12x10_UNORM_BLOCK"),
2122 std::make_pair(182, "VK_FORMAT_ASTC_12x10_SRGB_BLOCK"),
2123 std::make_pair(183, "VK_FORMAT_ASTC_12x12_UNORM_BLOCK"),
2124 std::make_pair(184, "VK_FORMAT_ASTC_12x12_SRGB_BLOCK"),
2125 std::make_pair(1000156000, "VK_FORMAT_G8B8G8R8_422_UNORM"),
2126 std::make_pair(1000156001, "VK_FORMAT_B8G8R8G8_422_UNORM"),
2127 std::make_pair(1000156002, "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM"),
2128 std::make_pair(1000156003, "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM"),
2129 std::make_pair(1000156004, "VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM"),
2130 std::make_pair(1000156005, "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM"),
2131 std::make_pair(1000156006, "VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM"),
2132 std::make_pair(1000156007, "VK_FORMAT_R10X6_UNORM_PACK16"),
2133 std::make_pair(1000156008, "VK_FORMAT_R10X6G10X6_UNORM_2PACK16"),
2134 std::make_pair(1000156009, "VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16"),
2135 std::make_pair(1000156010, "VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16"),
2136 std::make_pair(1000156011, "VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16"),
2137 std::make_pair(1000156012, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16"),
2138 std::make_pair(1000156013, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16"),
2139 std::make_pair(1000156014, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16"),
2140 std::make_pair(1000156015, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16"),
2141 std::make_pair(1000156016, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16"),
2142 std::make_pair(1000156017, "VK_FORMAT_R12X4_UNORM_PACK16"),
2143 std::make_pair(1000156018, "VK_FORMAT_R12X4G12X4_UNORM_2PACK16"),
2144 std::make_pair(1000156019, "VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16"),
2145 std::make_pair(1000156020, "VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16"),
2146 std::make_pair(1000156021, "VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16"),
2147 std::make_pair(1000156022, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16"),
2148 std::make_pair(1000156023, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16"),
2149 std::make_pair(1000156024, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16"),
2150 std::make_pair(1000156025, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16"),
2151 std::make_pair(1000156026, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16"),
2152 std::make_pair(1000156027, "VK_FORMAT_G16B16G16R16_422_UNORM"),
2153 std::make_pair(1000156028, "VK_FORMAT_B16G16R16G16_422_UNORM"),
2154 std::make_pair(1000156029, "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM"),
2155 std::make_pair(1000156030, "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM"),
2156 std::make_pair(1000156031, "VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM"),
2157 std::make_pair(1000156032, "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM"),
2158 std::make_pair(1000156033, "VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM"),
2159 std::make_pair(1000054000, "VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG"),
2160 std::make_pair(1000054001, "VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG"),
2161 std::make_pair(1000054002, "VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG"),
2162 std::make_pair(1000054003, "VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG"),
2163 std::make_pair(1000054004, "VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG"),
2164 std::make_pair(1000054005, "VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG"),
2165 std::make_pair(1000054006, "VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG"),
2166 std::make_pair(1000054007, "VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG"),
2167 std::make_pair(1000066000, "VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT"),
2168 std::make_pair(1000066001, "VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT"),
2169 std::make_pair(1000066002, "VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT"),
2170 std::make_pair(1000066003, "VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT"),
2171 std::make_pair(1000066004, "VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT"),
2172 std::make_pair(1000066005, "VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT"),
2173 std::make_pair(1000066006, "VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT"),
2174 std::make_pair(1000066007, "VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT"),
2175 std::make_pair(1000066008, "VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT"),
2176 std::make_pair(1000066009, "VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT"),
2177 std::make_pair(1000066010, "VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT"),
2178 std::make_pair(1000066011, "VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT"),
2179 std::make_pair(1000066012, "VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT"),
2180 std::make_pair(1000066013, "VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT"),
2181 std::make_pair(1000288000, "VK_FORMAT_ASTC_3x3x3_UNORM_BLOCK_EXT"),
2182 std::make_pair(1000288001, "VK_FORMAT_ASTC_3x3x3_SRGB_BLOCK_EXT"),
2183 std::make_pair(1000288002, "VK_FORMAT_ASTC_3x3x3_SFLOAT_BLOCK_EXT"),
2184 std::make_pair(1000288003, "VK_FORMAT_ASTC_4x3x3_UNORM_BLOCK_EXT"),
2185 std::make_pair(1000288004, "VK_FORMAT_ASTC_4x3x3_SRGB_BLOCK_EXT"),
2186 std::make_pair(1000288005, "VK_FORMAT_ASTC_4x3x3_SFLOAT_BLOCK_EXT"),
2187 std::make_pair(1000288006, "VK_FORMAT_ASTC_4x4x3_UNORM_BLOCK_EXT"),
2188 std::make_pair(1000288007, "VK_FORMAT_ASTC_4x4x3_SRGB_BLOCK_EXT"),
2189 std::make_pair(1000288008, "VK_FORMAT_ASTC_4x4x3_SFLOAT_BLOCK_EXT"),
2190 std::make_pair(1000288009, "VK_FORMAT_ASTC_4x4x4_UNORM_BLOCK_EXT"),
2191 std::make_pair(1000288010, "VK_FORMAT_ASTC_4x4x4_SRGB_BLOCK_EXT"),
2192 std::make_pair(1000288011, "VK_FORMAT_ASTC_4x4x4_SFLOAT_BLOCK_EXT"),
2193 std::make_pair(1000288012, "VK_FORMAT_ASTC_5x4x4_UNORM_BLOCK_EXT"),
2194 std::make_pair(1000288013, "VK_FORMAT_ASTC_5x4x4_SRGB_BLOCK_EXT"),
2195 std::make_pair(1000288014, "VK_FORMAT_ASTC_5x4x4_SFLOAT_BLOCK_EXT"),
2196 std::make_pair(1000288015, "VK_FORMAT_ASTC_5x5x4_UNORM_BLOCK_EXT"),
2197 std::make_pair(1000288016, "VK_FORMAT_ASTC_5x5x4_SRGB_BLOCK_EXT"),
2198 std::make_pair(1000288017, "VK_FORMAT_ASTC_5x5x4_SFLOAT_BLOCK_EXT"),
2199 std::make_pair(1000288018, "VK_FORMAT_ASTC_5x5x5_UNORM_BLOCK_EXT"),
2200 std::make_pair(1000288019, "VK_FORMAT_ASTC_5x5x5_SRGB_BLOCK_EXT"),
2201 std::make_pair(1000288020, "VK_FORMAT_ASTC_5x5x5_SFLOAT_BLOCK_EXT"),
2202 std::make_pair(1000288021, "VK_FORMAT_ASTC_6x5x5_UNORM_BLOCK_EXT"),
2203 std::make_pair(1000288022, "VK_FORMAT_ASTC_6x5x5_SRGB_BLOCK_EXT"),
2204 std::make_pair(1000288023, "VK_FORMAT_ASTC_6x5x5_SFLOAT_BLOCK_EXT"),
2205 std::make_pair(1000288024, "VK_FORMAT_ASTC_6x6x5_UNORM_BLOCK_EXT"),
2206 std::make_pair(1000288025, "VK_FORMAT_ASTC_6x6x5_SRGB_BLOCK_EXT"),
2207 std::make_pair(1000288026, "VK_FORMAT_ASTC_6x6x5_SFLOAT_BLOCK_EXT"),
2208 std::make_pair(1000288027, "VK_FORMAT_ASTC_6x6x6_UNORM_BLOCK_EXT"),
2209 std::make_pair(1000288028, "VK_FORMAT_ASTC_6x6x6_SRGB_BLOCK_EXT"),
2210 std::make_pair(1000288029, "VK_FORMAT_ASTC_6x6x6_SFLOAT_BLOCK_EXT"),
2211 std::make_pair(1000330000, "VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT"),
2212 std::make_pair(1000330001, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT"),
2213 std::make_pair(1000330002, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT"),
2214 std::make_pair(1000330003, "VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT"),
2215 std::make_pair(1000340000, "VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT"),
2216 std::make_pair(1000340001, "VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT"),
2217 };
print_VkFormat(VkFormat obj,const std::string & str,bool commaNeeded=true)2218 static void print_VkFormat(VkFormat obj, const std::string &str, bool commaNeeded = true)
2219 {
2220 PRINT_SPACE
2221 if (str != "")
2222 _OUT << "\"" << str << "\""
2223 << " : ";
2224 if (commaNeeded)
2225 _OUT << "\"" << VkFormat_map[obj] << "\"," << std::endl;
2226 else
2227 _OUT << "\"" << VkFormat_map[obj] << "\"" << std::endl;
2228 }
print_VkFormat(const VkFormat * obj,const std::string & str,bool commaNeeded=true)2229 static void print_VkFormat(const VkFormat *obj, const std::string &str, bool commaNeeded = true)
2230 {
2231 PRINT_SPACE
2232 if (str != "")
2233 _OUT << "\"" << str << "\""
2234 << " : ";
2235 if (commaNeeded)
2236 _OUT << "\"" << VkFormat_map[*obj] << "\"," << std::endl;
2237 else
2238 _OUT << "\"" << VkFormat_map[*obj] << "\"" << std::endl;
2239 }
2240
2241 static std::map<uint64_t, std::string> VkFormatFeatureFlagBits_map = {
2242 std::make_pair(1ULL << 0, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT"),
2243 std::make_pair(1ULL << 1, "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT"),
2244 std::make_pair(1ULL << 2, "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT"),
2245 std::make_pair(1ULL << 3, "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT"),
2246 std::make_pair(1ULL << 4, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT"),
2247 std::make_pair(1ULL << 5, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT"),
2248 std::make_pair(1ULL << 6, "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT"),
2249 std::make_pair(1ULL << 7, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT"),
2250 std::make_pair(1ULL << 8, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT"),
2251 std::make_pair(1ULL << 9, "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT"),
2252 std::make_pair(1ULL << 10, "VK_FORMAT_FEATURE_BLIT_SRC_BIT"),
2253 std::make_pair(1ULL << 11, "VK_FORMAT_FEATURE_BLIT_DST_BIT"),
2254 std::make_pair(1ULL << 12, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT"),
2255 std::make_pair(1ULL << 14, "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT"),
2256 std::make_pair(1ULL << 15, "VK_FORMAT_FEATURE_TRANSFER_DST_BIT"),
2257 std::make_pair(1ULL << 17, "VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT"),
2258 std::make_pair(1ULL << 18, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT"),
2259 std::make_pair(1ULL << 19, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT"),
2260 std::make_pair(1ULL << 20, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT"),
2261 std::make_pair(1ULL << 21,
2262 "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT"),
2263 std::make_pair(1ULL << 22, "VK_FORMAT_FEATURE_DISJOINT_BIT"),
2264 std::make_pair(1ULL << 23, "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT"),
2265 std::make_pair(1ULL << 16, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT"),
2266 std::make_pair(1ULL << 13, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG"),
2267 std::make_pair(1ULL << 25, "VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR"),
2268 std::make_pair(1ULL << 26, "VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR"),
2269 std::make_pair(1ULL << 29, "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR"),
2270 std::make_pair(1ULL << 24, "VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT"),
2271 std::make_pair(1ULL << 30, "VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2272 std::make_pair(1ULL << 27, "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR"),
2273 std::make_pair(1ULL << 28, "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR"),
2274 };
print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj,const std::string & str,bool commaNeeded=true)2275 static void print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj, const std::string &str, bool commaNeeded = true)
2276 {
2277 PRINT_SPACE
2278 if (str != "")
2279 _OUT << "\"" << str << "\""
2280 << " : ";
2281 if (commaNeeded)
2282 _OUT << "\"" << VkFormatFeatureFlagBits_map[obj] << "\"," << std::endl;
2283 else
2284 _OUT << "\"" << VkFormatFeatureFlagBits_map[obj] << "\"" << std::endl;
2285 }
print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits * obj,const std::string & str,bool commaNeeded=true)2286 static void print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits *obj, const std::string &str,
2287 bool commaNeeded = true)
2288 {
2289 PRINT_SPACE
2290 if (str != "")
2291 _OUT << "\"" << str << "\""
2292 << " : ";
2293 if (commaNeeded)
2294 _OUT << "\"" << VkFormatFeatureFlagBits_map[*obj] << "\"," << std::endl;
2295 else
2296 _OUT << "\"" << VkFormatFeatureFlagBits_map[*obj] << "\"" << std::endl;
2297 }
2298
2299 static std::map<uint64_t, std::string> VkImageCreateFlagBits_map = {
2300 std::make_pair(1ULL << 0, "VK_IMAGE_CREATE_SPARSE_BINDING_BIT"),
2301 std::make_pair(1ULL << 1, "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT"),
2302 std::make_pair(1ULL << 2, "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT"),
2303 std::make_pair(1ULL << 3, "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"),
2304 std::make_pair(1ULL << 4, "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"),
2305 std::make_pair(1ULL << 10, "VK_IMAGE_CREATE_ALIAS_BIT"),
2306 std::make_pair(1ULL << 6, "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT"),
2307 std::make_pair(1ULL << 5, "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT"),
2308 std::make_pair(1ULL << 7, "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT"),
2309 std::make_pair(1ULL << 8, "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT"),
2310 std::make_pair(1ULL << 11, "VK_IMAGE_CREATE_PROTECTED_BIT"),
2311 std::make_pair(1ULL << 9, "VK_IMAGE_CREATE_DISJOINT_BIT"),
2312 std::make_pair(1ULL << 13, "VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV"),
2313 std::make_pair(1ULL << 12, "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT"),
2314 std::make_pair(1ULL << 14, "VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT"),
2315 std::make_pair(1ULL << 16, "VK_IMAGE_CREATE_RESERVED_16_BIT_AMD"),
2316 std::make_pair(1ULL << 17, "VK_IMAGE_CREATE_RESERVED_394_BIT_EXT"),
2317 std::make_pair(1ULL << 15, "VK_IMAGE_CREATE_RESERVED_426_BIT_QCOM"),
2318 };
print_VkImageCreateFlagBits(VkImageCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2319 static void print_VkImageCreateFlagBits(VkImageCreateFlagBits obj, const std::string &str, bool commaNeeded = true)
2320 {
2321 PRINT_SPACE
2322 if (str != "")
2323 _OUT << "\"" << str << "\""
2324 << " : ";
2325 if (commaNeeded)
2326 _OUT << "\"" << VkImageCreateFlagBits_map[obj] << "\"," << std::endl;
2327 else
2328 _OUT << "\"" << VkImageCreateFlagBits_map[obj] << "\"" << std::endl;
2329 }
print_VkImageCreateFlagBits(const VkImageCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2330 static void print_VkImageCreateFlagBits(const VkImageCreateFlagBits *obj, const std::string &str,
2331 bool commaNeeded = true)
2332 {
2333 PRINT_SPACE
2334 if (str != "")
2335 _OUT << "\"" << str << "\""
2336 << " : ";
2337 if (commaNeeded)
2338 _OUT << "\"" << VkImageCreateFlagBits_map[*obj] << "\"," << std::endl;
2339 else
2340 _OUT << "\"" << VkImageCreateFlagBits_map[*obj] << "\"" << std::endl;
2341 }
2342
2343 static std::map<uint64_t, std::string> VkSampleCountFlagBits_map = {
2344 std::make_pair(1ULL << 0, "VK_SAMPLE_COUNT_1_BIT"), std::make_pair(1ULL << 1, "VK_SAMPLE_COUNT_2_BIT"),
2345 std::make_pair(1ULL << 2, "VK_SAMPLE_COUNT_4_BIT"), std::make_pair(1ULL << 3, "VK_SAMPLE_COUNT_8_BIT"),
2346 std::make_pair(1ULL << 4, "VK_SAMPLE_COUNT_16_BIT"), std::make_pair(1ULL << 5, "VK_SAMPLE_COUNT_32_BIT"),
2347 std::make_pair(1ULL << 6, "VK_SAMPLE_COUNT_64_BIT"),
2348 };
print_VkSampleCountFlagBits(VkSampleCountFlagBits obj,const std::string & str,bool commaNeeded=true)2349 static void print_VkSampleCountFlagBits(VkSampleCountFlagBits obj, const std::string &str, bool commaNeeded = true)
2350 {
2351 PRINT_SPACE
2352 if (str != "")
2353 _OUT << "\"" << str << "\""
2354 << " : ";
2355 if (commaNeeded)
2356 _OUT << "\"" << VkSampleCountFlagBits_map[obj] << "\"," << std::endl;
2357 else
2358 _OUT << "\"" << VkSampleCountFlagBits_map[obj] << "\"" << std::endl;
2359 }
print_VkSampleCountFlagBits(const VkSampleCountFlagBits * obj,const std::string & str,bool commaNeeded=true)2360 static void print_VkSampleCountFlagBits(const VkSampleCountFlagBits *obj, const std::string &str,
2361 bool commaNeeded = true)
2362 {
2363 PRINT_SPACE
2364 if (str != "")
2365 _OUT << "\"" << str << "\""
2366 << " : ";
2367 if (commaNeeded)
2368 _OUT << "\"" << VkSampleCountFlagBits_map[*obj] << "\"," << std::endl;
2369 else
2370 _OUT << "\"" << VkSampleCountFlagBits_map[*obj] << "\"" << std::endl;
2371 }
2372
2373 static std::map<uint64_t, std::string> VkImageTiling_map = {
2374 std::make_pair(0, "VK_IMAGE_TILING_OPTIMAL"),
2375 std::make_pair(1, "VK_IMAGE_TILING_LINEAR"),
2376 std::make_pair(1000158000, "VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT"),
2377 };
print_VkImageTiling(VkImageTiling obj,const std::string & str,bool commaNeeded=true)2378 static void print_VkImageTiling(VkImageTiling obj, const std::string &str, bool commaNeeded = true)
2379 {
2380 PRINT_SPACE
2381 if (str != "")
2382 _OUT << "\"" << str << "\""
2383 << " : ";
2384 if (commaNeeded)
2385 _OUT << "\"" << VkImageTiling_map[obj] << "\"," << std::endl;
2386 else
2387 _OUT << "\"" << VkImageTiling_map[obj] << "\"" << std::endl;
2388 }
print_VkImageTiling(const VkImageTiling * obj,const std::string & str,bool commaNeeded=true)2389 static void print_VkImageTiling(const VkImageTiling *obj, const std::string &str, bool commaNeeded = true)
2390 {
2391 PRINT_SPACE
2392 if (str != "")
2393 _OUT << "\"" << str << "\""
2394 << " : ";
2395 if (commaNeeded)
2396 _OUT << "\"" << VkImageTiling_map[*obj] << "\"," << std::endl;
2397 else
2398 _OUT << "\"" << VkImageTiling_map[*obj] << "\"" << std::endl;
2399 }
2400
2401 static std::map<uint64_t, std::string> VkImageType_map = {
2402 std::make_pair(0, "VK_IMAGE_TYPE_1D"),
2403 std::make_pair(1, "VK_IMAGE_TYPE_2D"),
2404 std::make_pair(2, "VK_IMAGE_TYPE_3D"),
2405 };
print_VkImageType(VkImageType obj,const std::string & str,bool commaNeeded=true)2406 static void print_VkImageType(VkImageType obj, const std::string &str, bool commaNeeded = true)
2407 {
2408 PRINT_SPACE
2409 if (str != "")
2410 _OUT << "\"" << str << "\""
2411 << " : ";
2412 if (commaNeeded)
2413 _OUT << "\"" << VkImageType_map[obj] << "\"," << std::endl;
2414 else
2415 _OUT << "\"" << VkImageType_map[obj] << "\"" << std::endl;
2416 }
print_VkImageType(const VkImageType * obj,const std::string & str,bool commaNeeded=true)2417 static void print_VkImageType(const VkImageType *obj, const std::string &str, bool commaNeeded = true)
2418 {
2419 PRINT_SPACE
2420 if (str != "")
2421 _OUT << "\"" << str << "\""
2422 << " : ";
2423 if (commaNeeded)
2424 _OUT << "\"" << VkImageType_map[*obj] << "\"," << std::endl;
2425 else
2426 _OUT << "\"" << VkImageType_map[*obj] << "\"" << std::endl;
2427 }
2428
2429 static std::map<uint64_t, std::string> VkImageUsageFlagBits_map = {
2430 std::make_pair(1ULL << 0, "VK_IMAGE_USAGE_TRANSFER_SRC_BIT"),
2431 std::make_pair(1ULL << 1, "VK_IMAGE_USAGE_TRANSFER_DST_BIT"),
2432 std::make_pair(1ULL << 2, "VK_IMAGE_USAGE_SAMPLED_BIT"),
2433 std::make_pair(1ULL << 3, "VK_IMAGE_USAGE_STORAGE_BIT"),
2434 std::make_pair(1ULL << 4, "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT"),
2435 std::make_pair(1ULL << 5, "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT"),
2436 std::make_pair(1ULL << 6, "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT"),
2437 std::make_pair(1ULL << 7, "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT"),
2438 std::make_pair(1ULL << 10, "VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR"),
2439 std::make_pair(1ULL << 11, "VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR"),
2440 std::make_pair(1ULL << 12, "VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR"),
2441 std::make_pair(1ULL << 16, "VK_IMAGE_USAGE_RESERVED_16_BIT_QCOM"),
2442 std::make_pair(1ULL << 17, "VK_IMAGE_USAGE_RESERVED_17_BIT_QCOM"),
2443 std::make_pair(1ULL << 9, "VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT"),
2444 std::make_pair(1ULL << 8, "VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2445 std::make_pair(1ULL << 13, "VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR"),
2446 std::make_pair(1ULL << 14, "VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR"),
2447 std::make_pair(1ULL << 15, "VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR"),
2448 std::make_pair(1ULL << 19, "VK_IMAGE_USAGE_RESERVED_19_BIT_EXT"),
2449 std::make_pair(1ULL << 18, "VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI"),
2450 };
print_VkImageUsageFlagBits(VkImageUsageFlagBits obj,const std::string & str,bool commaNeeded=true)2451 static void print_VkImageUsageFlagBits(VkImageUsageFlagBits obj, const std::string &str, bool commaNeeded = true)
2452 {
2453 PRINT_SPACE
2454 if (str != "")
2455 _OUT << "\"" << str << "\""
2456 << " : ";
2457 if (commaNeeded)
2458 _OUT << "\"" << VkImageUsageFlagBits_map[obj] << "\"," << std::endl;
2459 else
2460 _OUT << "\"" << VkImageUsageFlagBits_map[obj] << "\"" << std::endl;
2461 }
print_VkImageUsageFlagBits(const VkImageUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)2462 static void print_VkImageUsageFlagBits(const VkImageUsageFlagBits *obj, const std::string &str, bool commaNeeded = true)
2463 {
2464 PRINT_SPACE
2465 if (str != "")
2466 _OUT << "\"" << str << "\""
2467 << " : ";
2468 if (commaNeeded)
2469 _OUT << "\"" << VkImageUsageFlagBits_map[*obj] << "\"," << std::endl;
2470 else
2471 _OUT << "\"" << VkImageUsageFlagBits_map[*obj] << "\"" << std::endl;
2472 }
2473
2474 static std::map<uint64_t, std::string> VkMemoryHeapFlagBits_map = {
2475 std::make_pair(1ULL << 0, "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT"),
2476 std::make_pair(1ULL << 1, "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT"),
2477 std::make_pair(1ULL << 2, "VK_MEMORY_HEAP_SEU_SAFE_BIT"),
2478 };
print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj,const std::string & str,bool commaNeeded=true)2479 static void print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj, const std::string &str, bool commaNeeded = true)
2480 {
2481 PRINT_SPACE
2482 if (str != "")
2483 _OUT << "\"" << str << "\""
2484 << " : ";
2485 if (commaNeeded)
2486 _OUT << "\"" << VkMemoryHeapFlagBits_map[obj] << "\"," << std::endl;
2487 else
2488 _OUT << "\"" << VkMemoryHeapFlagBits_map[obj] << "\"" << std::endl;
2489 }
print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits * obj,const std::string & str,bool commaNeeded=true)2490 static void print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits *obj, const std::string &str, bool commaNeeded = true)
2491 {
2492 PRINT_SPACE
2493 if (str != "")
2494 _OUT << "\"" << str << "\""
2495 << " : ";
2496 if (commaNeeded)
2497 _OUT << "\"" << VkMemoryHeapFlagBits_map[*obj] << "\"," << std::endl;
2498 else
2499 _OUT << "\"" << VkMemoryHeapFlagBits_map[*obj] << "\"" << std::endl;
2500 }
2501
2502 static std::map<uint64_t, std::string> VkMemoryPropertyFlagBits_map = {
2503 std::make_pair(1ULL << 0, "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT"),
2504 std::make_pair(1ULL << 1, "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT"),
2505 std::make_pair(1ULL << 2, "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT"),
2506 std::make_pair(1ULL << 3, "VK_MEMORY_PROPERTY_HOST_CACHED_BIT"),
2507 std::make_pair(1ULL << 4, "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT"),
2508 std::make_pair(1ULL << 5, "VK_MEMORY_PROPERTY_PROTECTED_BIT"),
2509 std::make_pair(1ULL << 6, "VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD"),
2510 std::make_pair(1ULL << 7, "VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD"),
2511 std::make_pair(1ULL << 8, "VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV"),
2512 };
print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj,const std::string & str,bool commaNeeded=true)2513 static void print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj, const std::string &str,
2514 bool commaNeeded = true)
2515 {
2516 PRINT_SPACE
2517 if (str != "")
2518 _OUT << "\"" << str << "\""
2519 << " : ";
2520 if (commaNeeded)
2521 _OUT << "\"" << VkMemoryPropertyFlagBits_map[obj] << "\"," << std::endl;
2522 else
2523 _OUT << "\"" << VkMemoryPropertyFlagBits_map[obj] << "\"" << std::endl;
2524 }
print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits * obj,const std::string & str,bool commaNeeded=true)2525 static void print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits *obj, const std::string &str,
2526 bool commaNeeded = true)
2527 {
2528 PRINT_SPACE
2529 if (str != "")
2530 _OUT << "\"" << str << "\""
2531 << " : ";
2532 if (commaNeeded)
2533 _OUT << "\"" << VkMemoryPropertyFlagBits_map[*obj] << "\"," << std::endl;
2534 else
2535 _OUT << "\"" << VkMemoryPropertyFlagBits_map[*obj] << "\"" << std::endl;
2536 }
2537
2538 static std::map<uint64_t, std::string> VkPhysicalDeviceType_map = {
2539 std::make_pair(0, "VK_PHYSICAL_DEVICE_TYPE_OTHER"),
2540 std::make_pair(1, "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU"),
2541 std::make_pair(2, "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU"),
2542 std::make_pair(3, "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU"),
2543 std::make_pair(4, "VK_PHYSICAL_DEVICE_TYPE_CPU"),
2544 };
print_VkPhysicalDeviceType(VkPhysicalDeviceType obj,const std::string & str,bool commaNeeded=true)2545 static void print_VkPhysicalDeviceType(VkPhysicalDeviceType obj, const std::string &str, bool commaNeeded = true)
2546 {
2547 PRINT_SPACE
2548 if (str != "")
2549 _OUT << "\"" << str << "\""
2550 << " : ";
2551 if (commaNeeded)
2552 _OUT << "\"" << VkPhysicalDeviceType_map[obj] << "\"," << std::endl;
2553 else
2554 _OUT << "\"" << VkPhysicalDeviceType_map[obj] << "\"" << std::endl;
2555 }
print_VkPhysicalDeviceType(const VkPhysicalDeviceType * obj,const std::string & str,bool commaNeeded=true)2556 static void print_VkPhysicalDeviceType(const VkPhysicalDeviceType *obj, const std::string &str, bool commaNeeded = true)
2557 {
2558 PRINT_SPACE
2559 if (str != "")
2560 _OUT << "\"" << str << "\""
2561 << " : ";
2562 if (commaNeeded)
2563 _OUT << "\"" << VkPhysicalDeviceType_map[*obj] << "\"," << std::endl;
2564 else
2565 _OUT << "\"" << VkPhysicalDeviceType_map[*obj] << "\"" << std::endl;
2566 }
2567
2568 static std::map<uint64_t, std::string> VkQueueFlagBits_map = {
2569 std::make_pair(1ULL << 0, "VK_QUEUE_GRAPHICS_BIT"),
2570 std::make_pair(1ULL << 1, "VK_QUEUE_COMPUTE_BIT"),
2571 std::make_pair(1ULL << 2, "VK_QUEUE_TRANSFER_BIT"),
2572 std::make_pair(1ULL << 4, "VK_QUEUE_PROTECTED_BIT"),
2573 std::make_pair(1ULL << 5, "VK_QUEUE_VIDEO_DECODE_BIT_KHR"),
2574 std::make_pair(1ULL << 6, "VK_QUEUE_VIDEO_ENCODE_BIT_KHR"),
2575 };
print_VkQueueFlagBits(VkQueueFlagBits obj,const std::string & str,bool commaNeeded=true)2576 static void print_VkQueueFlagBits(VkQueueFlagBits obj, const std::string &str, bool commaNeeded = true)
2577 {
2578 PRINT_SPACE
2579 if (str != "")
2580 _OUT << "\"" << str << "\""
2581 << " : ";
2582 if (commaNeeded)
2583 _OUT << "\"" << VkQueueFlagBits_map[obj] << "\"," << std::endl;
2584 else
2585 _OUT << "\"" << VkQueueFlagBits_map[obj] << "\"" << std::endl;
2586 }
print_VkQueueFlagBits(const VkQueueFlagBits * obj,const std::string & str,bool commaNeeded=true)2587 static void print_VkQueueFlagBits(const VkQueueFlagBits *obj, const std::string &str, bool commaNeeded = true)
2588 {
2589 PRINT_SPACE
2590 if (str != "")
2591 _OUT << "\"" << str << "\""
2592 << " : ";
2593 if (commaNeeded)
2594 _OUT << "\"" << VkQueueFlagBits_map[*obj] << "\"," << std::endl;
2595 else
2596 _OUT << "\"" << VkQueueFlagBits_map[*obj] << "\"" << std::endl;
2597 }
2598
2599 static std::map<uint64_t, std::string> VkDeviceQueueCreateFlagBits_map = {
2600 std::make_pair(1ULL << 0, "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT"),
2601 };
print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2602 static void print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj, const std::string &str,
2603 bool commaNeeded = true)
2604 {
2605 PRINT_SPACE
2606 if (str != "")
2607 _OUT << "\"" << str << "\""
2608 << " : ";
2609 if (commaNeeded)
2610 _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[obj] << "\"," << std::endl;
2611 else
2612 _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[obj] << "\"" << std::endl;
2613 }
print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2614 static void print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits *obj, const std::string &str,
2615 bool commaNeeded = true)
2616 {
2617 PRINT_SPACE
2618 if (str != "")
2619 _OUT << "\"" << str << "\""
2620 << " : ";
2621 if (commaNeeded)
2622 _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[*obj] << "\"," << std::endl;
2623 else
2624 _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[*obj] << "\"" << std::endl;
2625 }
2626
2627 static std::map<uint64_t, std::string> VkPipelineStageFlagBits_map = {
2628 std::make_pair(1ULL << 0, "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT"),
2629 std::make_pair(1ULL << 1, "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT"),
2630 std::make_pair(1ULL << 2, "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT"),
2631 std::make_pair(1ULL << 3, "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT"),
2632 std::make_pair(1ULL << 4, "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT"),
2633 std::make_pair(1ULL << 5, "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT"),
2634 std::make_pair(1ULL << 6, "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT"),
2635 std::make_pair(1ULL << 7, "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT"),
2636 std::make_pair(1ULL << 8, "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT"),
2637 std::make_pair(1ULL << 9, "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT"),
2638 std::make_pair(1ULL << 10, "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT"),
2639 std::make_pair(1ULL << 11, "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT"),
2640 std::make_pair(1ULL << 12, "VK_PIPELINE_STAGE_TRANSFER_BIT"),
2641 std::make_pair(1ULL << 13, "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT"),
2642 std::make_pair(1ULL << 14, "VK_PIPELINE_STAGE_HOST_BIT"),
2643 std::make_pair(1ULL << 15, "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT"),
2644 std::make_pair(1ULL << 16, "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT"),
2645 std::make_pair(1ULL << 24, "VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT"),
2646 std::make_pair(1ULL << 18, "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT"),
2647 std::make_pair(1ULL << 25, "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR"),
2648 std::make_pair(1ULL << 21, "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR"),
2649 std::make_pair(1ULL << 19, "VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV"),
2650 std::make_pair(1ULL << 20, "VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV"),
2651 std::make_pair(1ULL << 23, "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT"),
2652 std::make_pair(1ULL << 22, "VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2653 std::make_pair(1ULL << 17, "VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV"),
2654 std::make_pair(0, "VK_PIPELINE_STAGE_NONE_KHR"),
2655 };
print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj,const std::string & str,bool commaNeeded=true)2656 static void print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj, const std::string &str, bool commaNeeded = true)
2657 {
2658 PRINT_SPACE
2659 if (str != "")
2660 _OUT << "\"" << str << "\""
2661 << " : ";
2662 if (commaNeeded)
2663 _OUT << "\"" << VkPipelineStageFlagBits_map[obj] << "\"," << std::endl;
2664 else
2665 _OUT << "\"" << VkPipelineStageFlagBits_map[obj] << "\"" << std::endl;
2666 }
print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj,const std::string & str,bool commaNeeded=true)2667 static void print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits *obj, const std::string &str,
2668 bool commaNeeded = true)
2669 {
2670 PRINT_SPACE
2671 if (str != "")
2672 _OUT << "\"" << str << "\""
2673 << " : ";
2674 if (commaNeeded)
2675 _OUT << "\"" << VkPipelineStageFlagBits_map[*obj] << "\"," << std::endl;
2676 else
2677 _OUT << "\"" << VkPipelineStageFlagBits_map[*obj] << "\"" << std::endl;
2678 }
2679
2680 static std::map<uint64_t, std::string> VkFenceCreateFlagBits_map = {
2681 std::make_pair(1ULL << 0, "VK_FENCE_CREATE_SIGNALED_BIT"),
2682 };
print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2683 static void print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj, const std::string &str, bool commaNeeded = true)
2684 {
2685 PRINT_SPACE
2686 if (str != "")
2687 _OUT << "\"" << str << "\""
2688 << " : ";
2689 if (commaNeeded)
2690 _OUT << "\"" << VkFenceCreateFlagBits_map[obj] << "\"," << std::endl;
2691 else
2692 _OUT << "\"" << VkFenceCreateFlagBits_map[obj] << "\"" << std::endl;
2693 }
print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2694 static void print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits *obj, const std::string &str,
2695 bool commaNeeded = true)
2696 {
2697 PRINT_SPACE
2698 if (str != "")
2699 _OUT << "\"" << str << "\""
2700 << " : ";
2701 if (commaNeeded)
2702 _OUT << "\"" << VkFenceCreateFlagBits_map[*obj] << "\"," << std::endl;
2703 else
2704 _OUT << "\"" << VkFenceCreateFlagBits_map[*obj] << "\"" << std::endl;
2705 }
2706
2707 static std::map<uint64_t, std::string> VkEventCreateFlagBits_map = {
2708 std::make_pair(1ULL << 0, "VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR"),
2709 };
print_VkEventCreateFlagBits(VkEventCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2710 static void print_VkEventCreateFlagBits(VkEventCreateFlagBits obj, const std::string &str, bool commaNeeded = true)
2711 {
2712 PRINT_SPACE
2713 if (str != "")
2714 _OUT << "\"" << str << "\""
2715 << " : ";
2716 if (commaNeeded)
2717 _OUT << "\"" << VkEventCreateFlagBits_map[obj] << "\"," << std::endl;
2718 else
2719 _OUT << "\"" << VkEventCreateFlagBits_map[obj] << "\"" << std::endl;
2720 }
print_VkEventCreateFlagBits(const VkEventCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2721 static void print_VkEventCreateFlagBits(const VkEventCreateFlagBits *obj, const std::string &str,
2722 bool commaNeeded = true)
2723 {
2724 PRINT_SPACE
2725 if (str != "")
2726 _OUT << "\"" << str << "\""
2727 << " : ";
2728 if (commaNeeded)
2729 _OUT << "\"" << VkEventCreateFlagBits_map[*obj] << "\"," << std::endl;
2730 else
2731 _OUT << "\"" << VkEventCreateFlagBits_map[*obj] << "\"" << std::endl;
2732 }
2733
2734 static std::map<uint64_t, std::string> VkQueryPipelineStatisticFlagBits_map = {
2735 std::make_pair(1ULL << 0, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT"),
2736 std::make_pair(1ULL << 1, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT"),
2737 std::make_pair(1ULL << 2, "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT"),
2738 std::make_pair(1ULL << 3, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT"),
2739 std::make_pair(1ULL << 4, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT"),
2740 std::make_pair(1ULL << 5, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT"),
2741 std::make_pair(1ULL << 6, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT"),
2742 std::make_pair(1ULL << 7, "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT"),
2743 std::make_pair(1ULL << 8, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT"),
2744 std::make_pair(1ULL << 9, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT"),
2745 std::make_pair(1ULL << 10, "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT"),
2746 };
print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj,const std::string & str,bool commaNeeded=true)2747 static void print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj, const std::string &str,
2748 bool commaNeeded = true)
2749 {
2750 PRINT_SPACE
2751 if (str != "")
2752 _OUT << "\"" << str << "\""
2753 << " : ";
2754 if (commaNeeded)
2755 _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[obj] << "\"," << std::endl;
2756 else
2757 _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[obj] << "\"" << std::endl;
2758 }
print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits * obj,const std::string & str,bool commaNeeded=true)2759 static void print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits *obj, const std::string &str,
2760 bool commaNeeded = true)
2761 {
2762 PRINT_SPACE
2763 if (str != "")
2764 _OUT << "\"" << str << "\""
2765 << " : ";
2766 if (commaNeeded)
2767 _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[*obj] << "\"," << std::endl;
2768 else
2769 _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[*obj] << "\"" << std::endl;
2770 }
2771
2772 static std::map<uint64_t, std::string> VkQueryType_map = {
2773 std::make_pair(0, "VK_QUERY_TYPE_OCCLUSION"),
2774 std::make_pair(1, "VK_QUERY_TYPE_PIPELINE_STATISTICS"),
2775 std::make_pair(2, "VK_QUERY_TYPE_TIMESTAMP"),
2776 std::make_pair(1000023000, "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR"),
2777 std::make_pair(1000028004, "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT"),
2778 std::make_pair(1000116000, "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR"),
2779 std::make_pair(1000150000, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR"),
2780 std::make_pair(1000150001, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR"),
2781 std::make_pair(1000165000, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV"),
2782 std::make_pair(1000210000, "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL"),
2783 std::make_pair(1000299000, "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR"),
2784 };
print_VkQueryType(VkQueryType obj,const std::string & str,bool commaNeeded=true)2785 static void print_VkQueryType(VkQueryType obj, const std::string &str, bool commaNeeded = true)
2786 {
2787 PRINT_SPACE
2788 if (str != "")
2789 _OUT << "\"" << str << "\""
2790 << " : ";
2791 if (commaNeeded)
2792 _OUT << "\"" << VkQueryType_map[obj] << "\"," << std::endl;
2793 else
2794 _OUT << "\"" << VkQueryType_map[obj] << "\"" << std::endl;
2795 }
print_VkQueryType(const VkQueryType * obj,const std::string & str,bool commaNeeded=true)2796 static void print_VkQueryType(const VkQueryType *obj, const std::string &str, bool commaNeeded = true)
2797 {
2798 PRINT_SPACE
2799 if (str != "")
2800 _OUT << "\"" << str << "\""
2801 << " : ";
2802 if (commaNeeded)
2803 _OUT << "\"" << VkQueryType_map[*obj] << "\"," << std::endl;
2804 else
2805 _OUT << "\"" << VkQueryType_map[*obj] << "\"" << std::endl;
2806 }
2807
2808 static std::map<uint64_t, std::string> VkQueryResultFlagBits_map = {
2809 std::make_pair(1ULL << 0, "VK_QUERY_RESULT_64_BIT"),
2810 std::make_pair(1ULL << 1, "VK_QUERY_RESULT_WAIT_BIT"),
2811 std::make_pair(1ULL << 2, "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT"),
2812 std::make_pair(1ULL << 3, "VK_QUERY_RESULT_PARTIAL_BIT"),
2813 std::make_pair(1ULL << 4, "VK_QUERY_RESULT_WITH_STATUS_BIT_KHR"),
2814 };
print_VkQueryResultFlagBits(VkQueryResultFlagBits obj,const std::string & str,bool commaNeeded=true)2815 static void print_VkQueryResultFlagBits(VkQueryResultFlagBits obj, const std::string &str, bool commaNeeded = true)
2816 {
2817 PRINT_SPACE
2818 if (str != "")
2819 _OUT << "\"" << str << "\""
2820 << " : ";
2821 if (commaNeeded)
2822 _OUT << "\"" << VkQueryResultFlagBits_map[obj] << "\"," << std::endl;
2823 else
2824 _OUT << "\"" << VkQueryResultFlagBits_map[obj] << "\"" << std::endl;
2825 }
print_VkQueryResultFlagBits(const VkQueryResultFlagBits * obj,const std::string & str,bool commaNeeded=true)2826 static void print_VkQueryResultFlagBits(const VkQueryResultFlagBits *obj, const std::string &str,
2827 bool commaNeeded = true)
2828 {
2829 PRINT_SPACE
2830 if (str != "")
2831 _OUT << "\"" << str << "\""
2832 << " : ";
2833 if (commaNeeded)
2834 _OUT << "\"" << VkQueryResultFlagBits_map[*obj] << "\"," << std::endl;
2835 else
2836 _OUT << "\"" << VkQueryResultFlagBits_map[*obj] << "\"" << std::endl;
2837 }
2838
2839 static std::map<uint64_t, std::string> VkBufferCreateFlagBits_map = {
2840 std::make_pair(1ULL << 0, "VK_BUFFER_CREATE_SPARSE_BINDING_BIT"),
2841 std::make_pair(1ULL << 1, "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT"),
2842 std::make_pair(1ULL << 2, "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT"),
2843 std::make_pair(1ULL << 3, "VK_BUFFER_CREATE_PROTECTED_BIT"),
2844 std::make_pair(1ULL << 4, "VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT"),
2845 std::make_pair(1ULL << 5, "VK_BUFFER_CREATE_RESERVED_5_BIT_AMD"),
2846 };
print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2847 static void print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj, const std::string &str, bool commaNeeded = true)
2848 {
2849 PRINT_SPACE
2850 if (str != "")
2851 _OUT << "\"" << str << "\""
2852 << " : ";
2853 if (commaNeeded)
2854 _OUT << "\"" << VkBufferCreateFlagBits_map[obj] << "\"," << std::endl;
2855 else
2856 _OUT << "\"" << VkBufferCreateFlagBits_map[obj] << "\"" << std::endl;
2857 }
print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2858 static void print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits *obj, const std::string &str,
2859 bool commaNeeded = true)
2860 {
2861 PRINT_SPACE
2862 if (str != "")
2863 _OUT << "\"" << str << "\""
2864 << " : ";
2865 if (commaNeeded)
2866 _OUT << "\"" << VkBufferCreateFlagBits_map[*obj] << "\"," << std::endl;
2867 else
2868 _OUT << "\"" << VkBufferCreateFlagBits_map[*obj] << "\"" << std::endl;
2869 }
2870
2871 static std::map<uint64_t, std::string> VkBufferUsageFlagBits_map = {
2872 std::make_pair(1ULL << 0, "VK_BUFFER_USAGE_TRANSFER_SRC_BIT"),
2873 std::make_pair(1ULL << 1, "VK_BUFFER_USAGE_TRANSFER_DST_BIT"),
2874 std::make_pair(1ULL << 2, "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT"),
2875 std::make_pair(1ULL << 3, "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT"),
2876 std::make_pair(1ULL << 4, "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT"),
2877 std::make_pair(1ULL << 5, "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT"),
2878 std::make_pair(1ULL << 6, "VK_BUFFER_USAGE_INDEX_BUFFER_BIT"),
2879 std::make_pair(1ULL << 7, "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT"),
2880 std::make_pair(1ULL << 8, "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT"),
2881 std::make_pair(1ULL << 17, "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT"),
2882 std::make_pair(1ULL << 13, "VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR"),
2883 std::make_pair(1ULL << 14, "VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR"),
2884 std::make_pair(1ULL << 11, "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT"),
2885 std::make_pair(1ULL << 12, "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT"),
2886 std::make_pair(1ULL << 9, "VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT"),
2887 std::make_pair(1ULL << 19, "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR"),
2888 std::make_pair(1ULL << 20, "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR"),
2889 std::make_pair(1ULL << 10, "VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR"),
2890 std::make_pair(1ULL << 18, "VK_BUFFER_USAGE_RESERVED_18_BIT_QCOM"),
2891 std::make_pair(1ULL << 15, "VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR"),
2892 std::make_pair(1ULL << 16, "VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR"),
2893 std::make_pair(1ULL << 21, "VK_BUFFER_USAGE_RESERVED_21_BIT_AMD"),
2894 std::make_pair(1ULL << 22, "VK_BUFFER_USAGE_RESERVED_22_BIT_AMD"),
2895 };
print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj,const std::string & str,bool commaNeeded=true)2896 static void print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj, const std::string &str, bool commaNeeded = true)
2897 {
2898 PRINT_SPACE
2899 if (str != "")
2900 _OUT << "\"" << str << "\""
2901 << " : ";
2902 if (commaNeeded)
2903 _OUT << "\"" << VkBufferUsageFlagBits_map[obj] << "\"," << std::endl;
2904 else
2905 _OUT << "\"" << VkBufferUsageFlagBits_map[obj] << "\"" << std::endl;
2906 }
print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)2907 static void print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits *obj, const std::string &str,
2908 bool commaNeeded = true)
2909 {
2910 PRINT_SPACE
2911 if (str != "")
2912 _OUT << "\"" << str << "\""
2913 << " : ";
2914 if (commaNeeded)
2915 _OUT << "\"" << VkBufferUsageFlagBits_map[*obj] << "\"," << std::endl;
2916 else
2917 _OUT << "\"" << VkBufferUsageFlagBits_map[*obj] << "\"" << std::endl;
2918 }
2919
2920 static std::map<uint64_t, std::string> VkSharingMode_map = {
2921 std::make_pair(0, "VK_SHARING_MODE_EXCLUSIVE"),
2922 std::make_pair(1, "VK_SHARING_MODE_CONCURRENT"),
2923 };
print_VkSharingMode(VkSharingMode obj,const std::string & str,bool commaNeeded=true)2924 static void print_VkSharingMode(VkSharingMode obj, const std::string &str, bool commaNeeded = true)
2925 {
2926 PRINT_SPACE
2927 if (str != "")
2928 _OUT << "\"" << str << "\""
2929 << " : ";
2930 if (commaNeeded)
2931 _OUT << "\"" << VkSharingMode_map[obj] << "\"," << std::endl;
2932 else
2933 _OUT << "\"" << VkSharingMode_map[obj] << "\"" << std::endl;
2934 }
print_VkSharingMode(const VkSharingMode * obj,const std::string & str,bool commaNeeded=true)2935 static void print_VkSharingMode(const VkSharingMode *obj, const std::string &str, bool commaNeeded = true)
2936 {
2937 PRINT_SPACE
2938 if (str != "")
2939 _OUT << "\"" << str << "\""
2940 << " : ";
2941 if (commaNeeded)
2942 _OUT << "\"" << VkSharingMode_map[*obj] << "\"," << std::endl;
2943 else
2944 _OUT << "\"" << VkSharingMode_map[*obj] << "\"" << std::endl;
2945 }
2946
2947 static std::map<uint64_t, std::string> VkComponentSwizzle_map = {
2948 std::make_pair(0, "VK_COMPONENT_SWIZZLE_IDENTITY"), std::make_pair(1, "VK_COMPONENT_SWIZZLE_ZERO"),
2949 std::make_pair(2, "VK_COMPONENT_SWIZZLE_ONE"), std::make_pair(3, "VK_COMPONENT_SWIZZLE_R"),
2950 std::make_pair(4, "VK_COMPONENT_SWIZZLE_G"), std::make_pair(5, "VK_COMPONENT_SWIZZLE_B"),
2951 std::make_pair(6, "VK_COMPONENT_SWIZZLE_A"),
2952 };
print_VkComponentSwizzle(VkComponentSwizzle obj,const std::string & str,bool commaNeeded=true)2953 static void print_VkComponentSwizzle(VkComponentSwizzle obj, const std::string &str, bool commaNeeded = true)
2954 {
2955 PRINT_SPACE
2956 if (str != "")
2957 _OUT << "\"" << str << "\""
2958 << " : ";
2959 if (commaNeeded)
2960 _OUT << "\"" << VkComponentSwizzle_map[obj] << "\"," << std::endl;
2961 else
2962 _OUT << "\"" << VkComponentSwizzle_map[obj] << "\"" << std::endl;
2963 }
print_VkComponentSwizzle(const VkComponentSwizzle * obj,const std::string & str,bool commaNeeded=true)2964 static void print_VkComponentSwizzle(const VkComponentSwizzle *obj, const std::string &str, bool commaNeeded = true)
2965 {
2966 PRINT_SPACE
2967 if (str != "")
2968 _OUT << "\"" << str << "\""
2969 << " : ";
2970 if (commaNeeded)
2971 _OUT << "\"" << VkComponentSwizzle_map[*obj] << "\"," << std::endl;
2972 else
2973 _OUT << "\"" << VkComponentSwizzle_map[*obj] << "\"" << std::endl;
2974 }
2975
2976 static std::map<uint64_t, std::string> VkImageViewCreateFlagBits_map = {
2977 std::make_pair(1ULL << 0, "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT"),
2978 std::make_pair(1ULL << 1, "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT"),
2979 };
print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2980 static void print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj, const std::string &str,
2981 bool commaNeeded = true)
2982 {
2983 PRINT_SPACE
2984 if (str != "")
2985 _OUT << "\"" << str << "\""
2986 << " : ";
2987 if (commaNeeded)
2988 _OUT << "\"" << VkImageViewCreateFlagBits_map[obj] << "\"," << std::endl;
2989 else
2990 _OUT << "\"" << VkImageViewCreateFlagBits_map[obj] << "\"" << std::endl;
2991 }
print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2992 static void print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits *obj, const std::string &str,
2993 bool commaNeeded = true)
2994 {
2995 PRINT_SPACE
2996 if (str != "")
2997 _OUT << "\"" << str << "\""
2998 << " : ";
2999 if (commaNeeded)
3000 _OUT << "\"" << VkImageViewCreateFlagBits_map[*obj] << "\"," << std::endl;
3001 else
3002 _OUT << "\"" << VkImageViewCreateFlagBits_map[*obj] << "\"" << std::endl;
3003 }
3004
3005 static std::map<uint64_t, std::string> VkImageViewType_map = {
3006 std::make_pair(0, "VK_IMAGE_VIEW_TYPE_1D"), std::make_pair(1, "VK_IMAGE_VIEW_TYPE_2D"),
3007 std::make_pair(2, "VK_IMAGE_VIEW_TYPE_3D"), std::make_pair(3, "VK_IMAGE_VIEW_TYPE_CUBE"),
3008 std::make_pair(4, "VK_IMAGE_VIEW_TYPE_1D_ARRAY"), std::make_pair(5, "VK_IMAGE_VIEW_TYPE_2D_ARRAY"),
3009 std::make_pair(6, "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY"),
3010 };
print_VkImageViewType(VkImageViewType obj,const std::string & str,bool commaNeeded=true)3011 static void print_VkImageViewType(VkImageViewType obj, const std::string &str, bool commaNeeded = true)
3012 {
3013 PRINT_SPACE
3014 if (str != "")
3015 _OUT << "\"" << str << "\""
3016 << " : ";
3017 if (commaNeeded)
3018 _OUT << "\"" << VkImageViewType_map[obj] << "\"," << std::endl;
3019 else
3020 _OUT << "\"" << VkImageViewType_map[obj] << "\"" << std::endl;
3021 }
print_VkImageViewType(const VkImageViewType * obj,const std::string & str,bool commaNeeded=true)3022 static void print_VkImageViewType(const VkImageViewType *obj, const std::string &str, bool commaNeeded = true)
3023 {
3024 PRINT_SPACE
3025 if (str != "")
3026 _OUT << "\"" << str << "\""
3027 << " : ";
3028 if (commaNeeded)
3029 _OUT << "\"" << VkImageViewType_map[*obj] << "\"," << std::endl;
3030 else
3031 _OUT << "\"" << VkImageViewType_map[*obj] << "\"" << std::endl;
3032 }
3033
3034 static std::map<uint64_t, std::string> VkPipelineCacheCreateFlagBits_map = {
3035 std::make_pair(1ULL << 2, "VK_PIPELINE_CACHE_CREATE_USE_APPLICATION_STORAGE_BIT"),
3036 std::make_pair(1ULL << 1, "VK_PIPELINE_CACHE_CREATE_RESERVED_1_BIT_EXT"),
3037 std::make_pair(1ULL << 0, "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT"),
3038 };
print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3039 static void print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj, const std::string &str,
3040 bool commaNeeded = true)
3041 {
3042 PRINT_SPACE
3043 if (str != "")
3044 _OUT << "\"" << str << "\""
3045 << " : ";
3046 if (commaNeeded)
3047 _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[obj] << "\"," << std::endl;
3048 else
3049 _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[obj] << "\"" << std::endl;
3050 }
print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3051 static void print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits *obj, const std::string &str,
3052 bool commaNeeded = true)
3053 {
3054 PRINT_SPACE
3055 if (str != "")
3056 _OUT << "\"" << str << "\""
3057 << " : ";
3058 if (commaNeeded)
3059 _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[*obj] << "\"," << std::endl;
3060 else
3061 _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[*obj] << "\"" << std::endl;
3062 }
3063
3064 static std::map<uint64_t, std::string> VkBlendFactor_map = {
3065 std::make_pair(0, "VK_BLEND_FACTOR_ZERO"),
3066 std::make_pair(1, "VK_BLEND_FACTOR_ONE"),
3067 std::make_pair(2, "VK_BLEND_FACTOR_SRC_COLOR"),
3068 std::make_pair(3, "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR"),
3069 std::make_pair(4, "VK_BLEND_FACTOR_DST_COLOR"),
3070 std::make_pair(5, "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR"),
3071 std::make_pair(6, "VK_BLEND_FACTOR_SRC_ALPHA"),
3072 std::make_pair(7, "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA"),
3073 std::make_pair(8, "VK_BLEND_FACTOR_DST_ALPHA"),
3074 std::make_pair(9, "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA"),
3075 std::make_pair(10, "VK_BLEND_FACTOR_CONSTANT_COLOR"),
3076 std::make_pair(11, "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR"),
3077 std::make_pair(12, "VK_BLEND_FACTOR_CONSTANT_ALPHA"),
3078 std::make_pair(13, "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA"),
3079 std::make_pair(14, "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE"),
3080 std::make_pair(15, "VK_BLEND_FACTOR_SRC1_COLOR"),
3081 std::make_pair(16, "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR"),
3082 std::make_pair(17, "VK_BLEND_FACTOR_SRC1_ALPHA"),
3083 std::make_pair(18, "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA"),
3084 };
print_VkBlendFactor(VkBlendFactor obj,const std::string & str,bool commaNeeded=true)3085 static void print_VkBlendFactor(VkBlendFactor obj, const std::string &str, bool commaNeeded = true)
3086 {
3087 PRINT_SPACE
3088 if (str != "")
3089 _OUT << "\"" << str << "\""
3090 << " : ";
3091 if (commaNeeded)
3092 _OUT << "\"" << VkBlendFactor_map[obj] << "\"," << std::endl;
3093 else
3094 _OUT << "\"" << VkBlendFactor_map[obj] << "\"" << std::endl;
3095 }
print_VkBlendFactor(const VkBlendFactor * obj,const std::string & str,bool commaNeeded=true)3096 static void print_VkBlendFactor(const VkBlendFactor *obj, const std::string &str, bool commaNeeded = true)
3097 {
3098 PRINT_SPACE
3099 if (str != "")
3100 _OUT << "\"" << str << "\""
3101 << " : ";
3102 if (commaNeeded)
3103 _OUT << "\"" << VkBlendFactor_map[*obj] << "\"," << std::endl;
3104 else
3105 _OUT << "\"" << VkBlendFactor_map[*obj] << "\"" << std::endl;
3106 }
3107
3108 static std::map<uint64_t, std::string> VkBlendOp_map = {
3109 std::make_pair(0, "VK_BLEND_OP_ADD"),
3110 std::make_pair(1, "VK_BLEND_OP_SUBTRACT"),
3111 std::make_pair(2, "VK_BLEND_OP_REVERSE_SUBTRACT"),
3112 std::make_pair(3, "VK_BLEND_OP_MIN"),
3113 std::make_pair(4, "VK_BLEND_OP_MAX"),
3114 std::make_pair(1000148000, "VK_BLEND_OP_ZERO_EXT"),
3115 std::make_pair(1000148001, "VK_BLEND_OP_SRC_EXT"),
3116 std::make_pair(1000148002, "VK_BLEND_OP_DST_EXT"),
3117 std::make_pair(1000148003, "VK_BLEND_OP_SRC_OVER_EXT"),
3118 std::make_pair(1000148004, "VK_BLEND_OP_DST_OVER_EXT"),
3119 std::make_pair(1000148005, "VK_BLEND_OP_SRC_IN_EXT"),
3120 std::make_pair(1000148006, "VK_BLEND_OP_DST_IN_EXT"),
3121 std::make_pair(1000148007, "VK_BLEND_OP_SRC_OUT_EXT"),
3122 std::make_pair(1000148008, "VK_BLEND_OP_DST_OUT_EXT"),
3123 std::make_pair(1000148009, "VK_BLEND_OP_SRC_ATOP_EXT"),
3124 std::make_pair(1000148010, "VK_BLEND_OP_DST_ATOP_EXT"),
3125 std::make_pair(1000148011, "VK_BLEND_OP_XOR_EXT"),
3126 std::make_pair(1000148012, "VK_BLEND_OP_MULTIPLY_EXT"),
3127 std::make_pair(1000148013, "VK_BLEND_OP_SCREEN_EXT"),
3128 std::make_pair(1000148014, "VK_BLEND_OP_OVERLAY_EXT"),
3129 std::make_pair(1000148015, "VK_BLEND_OP_DARKEN_EXT"),
3130 std::make_pair(1000148016, "VK_BLEND_OP_LIGHTEN_EXT"),
3131 std::make_pair(1000148017, "VK_BLEND_OP_COLORDODGE_EXT"),
3132 std::make_pair(1000148018, "VK_BLEND_OP_COLORBURN_EXT"),
3133 std::make_pair(1000148019, "VK_BLEND_OP_HARDLIGHT_EXT"),
3134 std::make_pair(1000148020, "VK_BLEND_OP_SOFTLIGHT_EXT"),
3135 std::make_pair(1000148021, "VK_BLEND_OP_DIFFERENCE_EXT"),
3136 std::make_pair(1000148022, "VK_BLEND_OP_EXCLUSION_EXT"),
3137 std::make_pair(1000148023, "VK_BLEND_OP_INVERT_EXT"),
3138 std::make_pair(1000148024, "VK_BLEND_OP_INVERT_RGB_EXT"),
3139 std::make_pair(1000148025, "VK_BLEND_OP_LINEARDODGE_EXT"),
3140 std::make_pair(1000148026, "VK_BLEND_OP_LINEARBURN_EXT"),
3141 std::make_pair(1000148027, "VK_BLEND_OP_VIVIDLIGHT_EXT"),
3142 std::make_pair(1000148028, "VK_BLEND_OP_LINEARLIGHT_EXT"),
3143 std::make_pair(1000148029, "VK_BLEND_OP_PINLIGHT_EXT"),
3144 std::make_pair(1000148030, "VK_BLEND_OP_HARDMIX_EXT"),
3145 std::make_pair(1000148031, "VK_BLEND_OP_HSL_HUE_EXT"),
3146 std::make_pair(1000148032, "VK_BLEND_OP_HSL_SATURATION_EXT"),
3147 std::make_pair(1000148033, "VK_BLEND_OP_HSL_COLOR_EXT"),
3148 std::make_pair(1000148034, "VK_BLEND_OP_HSL_LUMINOSITY_EXT"),
3149 std::make_pair(1000148035, "VK_BLEND_OP_PLUS_EXT"),
3150 std::make_pair(1000148036, "VK_BLEND_OP_PLUS_CLAMPED_EXT"),
3151 std::make_pair(1000148037, "VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT"),
3152 std::make_pair(1000148038, "VK_BLEND_OP_PLUS_DARKER_EXT"),
3153 std::make_pair(1000148039, "VK_BLEND_OP_MINUS_EXT"),
3154 std::make_pair(1000148040, "VK_BLEND_OP_MINUS_CLAMPED_EXT"),
3155 std::make_pair(1000148041, "VK_BLEND_OP_CONTRAST_EXT"),
3156 std::make_pair(1000148042, "VK_BLEND_OP_INVERT_OVG_EXT"),
3157 std::make_pair(1000148043, "VK_BLEND_OP_RED_EXT"),
3158 std::make_pair(1000148044, "VK_BLEND_OP_GREEN_EXT"),
3159 std::make_pair(1000148045, "VK_BLEND_OP_BLUE_EXT"),
3160 };
print_VkBlendOp(VkBlendOp obj,const std::string & str,bool commaNeeded=true)3161 static void print_VkBlendOp(VkBlendOp obj, const std::string &str, bool commaNeeded = true)
3162 {
3163 PRINT_SPACE
3164 if (str != "")
3165 _OUT << "\"" << str << "\""
3166 << " : ";
3167 if (commaNeeded)
3168 _OUT << "\"" << VkBlendOp_map[obj] << "\"," << std::endl;
3169 else
3170 _OUT << "\"" << VkBlendOp_map[obj] << "\"" << std::endl;
3171 }
print_VkBlendOp(const VkBlendOp * obj,const std::string & str,bool commaNeeded=true)3172 static void print_VkBlendOp(const VkBlendOp *obj, const std::string &str, bool commaNeeded = true)
3173 {
3174 PRINT_SPACE
3175 if (str != "")
3176 _OUT << "\"" << str << "\""
3177 << " : ";
3178 if (commaNeeded)
3179 _OUT << "\"" << VkBlendOp_map[*obj] << "\"," << std::endl;
3180 else
3181 _OUT << "\"" << VkBlendOp_map[*obj] << "\"" << std::endl;
3182 }
3183
3184 static std::map<uint64_t, std::string> VkColorComponentFlagBits_map = {
3185 std::make_pair(1ULL << 0, "VK_COLOR_COMPONENT_R_BIT"),
3186 std::make_pair(1ULL << 1, "VK_COLOR_COMPONENT_G_BIT"),
3187 std::make_pair(1ULL << 2, "VK_COLOR_COMPONENT_B_BIT"),
3188 std::make_pair(1ULL << 3, "VK_COLOR_COMPONENT_A_BIT"),
3189 };
print_VkColorComponentFlagBits(VkColorComponentFlagBits obj,const std::string & str,bool commaNeeded=true)3190 static void print_VkColorComponentFlagBits(VkColorComponentFlagBits obj, const std::string &str,
3191 bool commaNeeded = true)
3192 {
3193 PRINT_SPACE
3194 if (str != "")
3195 _OUT << "\"" << str << "\""
3196 << " : ";
3197 if (commaNeeded)
3198 _OUT << "\"" << VkColorComponentFlagBits_map[obj] << "\"," << std::endl;
3199 else
3200 _OUT << "\"" << VkColorComponentFlagBits_map[obj] << "\"" << std::endl;
3201 }
print_VkColorComponentFlagBits(const VkColorComponentFlagBits * obj,const std::string & str,bool commaNeeded=true)3202 static void print_VkColorComponentFlagBits(const VkColorComponentFlagBits *obj, const std::string &str,
3203 bool commaNeeded = true)
3204 {
3205 PRINT_SPACE
3206 if (str != "")
3207 _OUT << "\"" << str << "\""
3208 << " : ";
3209 if (commaNeeded)
3210 _OUT << "\"" << VkColorComponentFlagBits_map[*obj] << "\"," << std::endl;
3211 else
3212 _OUT << "\"" << VkColorComponentFlagBits_map[*obj] << "\"" << std::endl;
3213 }
3214
3215 static std::map<uint64_t, std::string> VkCompareOp_map = {
3216 std::make_pair(0, "VK_COMPARE_OP_NEVER"),
3217 std::make_pair(1, "VK_COMPARE_OP_LESS"),
3218 std::make_pair(2, "VK_COMPARE_OP_EQUAL"),
3219 std::make_pair(3, "VK_COMPARE_OP_LESS_OR_EQUAL"),
3220 std::make_pair(4, "VK_COMPARE_OP_GREATER"),
3221 std::make_pair(5, "VK_COMPARE_OP_NOT_EQUAL"),
3222 std::make_pair(6, "VK_COMPARE_OP_GREATER_OR_EQUAL"),
3223 std::make_pair(7, "VK_COMPARE_OP_ALWAYS"),
3224 };
print_VkCompareOp(VkCompareOp obj,const std::string & str,bool commaNeeded=true)3225 static void print_VkCompareOp(VkCompareOp obj, const std::string &str, bool commaNeeded = true)
3226 {
3227 PRINT_SPACE
3228 if (str != "")
3229 _OUT << "\"" << str << "\""
3230 << " : ";
3231 if (commaNeeded)
3232 _OUT << "\"" << VkCompareOp_map[obj] << "\"," << std::endl;
3233 else
3234 _OUT << "\"" << VkCompareOp_map[obj] << "\"" << std::endl;
3235 }
print_VkCompareOp(const VkCompareOp * obj,const std::string & str,bool commaNeeded=true)3236 static void print_VkCompareOp(const VkCompareOp *obj, const std::string &str, bool commaNeeded = true)
3237 {
3238 PRINT_SPACE
3239 if (str != "")
3240 _OUT << "\"" << str << "\""
3241 << " : ";
3242 if (commaNeeded)
3243 _OUT << "\"" << VkCompareOp_map[*obj] << "\"," << std::endl;
3244 else
3245 _OUT << "\"" << VkCompareOp_map[*obj] << "\"" << std::endl;
3246 }
3247
3248 static std::map<uint64_t, std::string> VkPipelineCreateFlagBits_map = {
3249 std::make_pair(1ULL << 0, "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"),
3250 std::make_pair(1ULL << 3, "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"),
3251 std::make_pair(1ULL << 4, "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT"),
3252 std::make_pair(1ULL << 21, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
3253 std::make_pair(1ULL << 22, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"),
3254 std::make_pair(1ULL << 14, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR"),
3255 std::make_pair(1ULL << 15, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR"),
3256 std::make_pair(1ULL << 16, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR"),
3257 std::make_pair(1ULL << 17, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR"),
3258 std::make_pair(1ULL << 12, "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR"),
3259 std::make_pair(1ULL << 13, "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR"),
3260 std::make_pair(1ULL << 19, "VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR"),
3261 std::make_pair(1ULL << 5, "VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV"),
3262 std::make_pair(1ULL << 6, "VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR"),
3263 std::make_pair(1ULL << 7, "VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR"),
3264 std::make_pair(1ULL << 18, "VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV"),
3265 std::make_pair(1ULL << 11, "VK_PIPELINE_CREATE_LIBRARY_BIT_KHR"),
3266 std::make_pair(1ULL << 8, "VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT"),
3267 std::make_pair(1ULL << 9, "VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT"),
3268 std::make_pair(1ULL << 23, "VK_PIPELINE_CREATE_RESERVED_23_BIT_AMD"),
3269 std::make_pair(1ULL << 10, "VK_PIPELINE_CREATE_RESERVED_10_BIT_AMD"),
3270 std::make_pair(1ULL << 20, "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV"),
3271 };
print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3272 static void print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj, const std::string &str,
3273 bool commaNeeded = true)
3274 {
3275 PRINT_SPACE
3276 if (str != "")
3277 _OUT << "\"" << str << "\""
3278 << " : ";
3279 if (commaNeeded)
3280 _OUT << "\"" << VkPipelineCreateFlagBits_map[obj] << "\"," << std::endl;
3281 else
3282 _OUT << "\"" << VkPipelineCreateFlagBits_map[obj] << "\"" << std::endl;
3283 }
print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3284 static void print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits *obj, const std::string &str,
3285 bool commaNeeded = true)
3286 {
3287 PRINT_SPACE
3288 if (str != "")
3289 _OUT << "\"" << str << "\""
3290 << " : ";
3291 if (commaNeeded)
3292 _OUT << "\"" << VkPipelineCreateFlagBits_map[*obj] << "\"," << std::endl;
3293 else
3294 _OUT << "\"" << VkPipelineCreateFlagBits_map[*obj] << "\"" << std::endl;
3295 }
3296
3297 static std::map<uint64_t, std::string> VkPipelineShaderStageCreateFlagBits_map = {
3298 std::make_pair(1ULL << 0, "VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT"),
3299 std::make_pair(1ULL << 1, "VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT"),
3300 std::make_pair(1ULL << 3, "VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_3_BIT_KHR"),
3301 };
print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3302 static void print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj, const std::string &str,
3303 bool commaNeeded = true)
3304 {
3305 PRINT_SPACE
3306 if (str != "")
3307 _OUT << "\"" << str << "\""
3308 << " : ";
3309 if (commaNeeded)
3310 _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[obj] << "\"," << std::endl;
3311 else
3312 _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[obj] << "\"" << std::endl;
3313 }
print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3314 static void print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits *obj,
3315 const std::string &str, bool commaNeeded = true)
3316 {
3317 PRINT_SPACE
3318 if (str != "")
3319 _OUT << "\"" << str << "\""
3320 << " : ";
3321 if (commaNeeded)
3322 _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[*obj] << "\"," << std::endl;
3323 else
3324 _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[*obj] << "\"" << std::endl;
3325 }
3326
3327 static std::map<uint64_t, std::string> VkShaderStageFlagBits_map = {
3328 std::make_pair(1ULL << 0, "VK_SHADER_STAGE_VERTEX_BIT"),
3329 std::make_pair(1ULL << 1, "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT"),
3330 std::make_pair(1ULL << 2, "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT"),
3331 std::make_pair(1ULL << 3, "VK_SHADER_STAGE_GEOMETRY_BIT"),
3332 std::make_pair(1ULL << 4, "VK_SHADER_STAGE_FRAGMENT_BIT"),
3333 std::make_pair(1ULL << 5, "VK_SHADER_STAGE_COMPUTE_BIT"),
3334 std::make_pair(0x0000001F, "VK_SHADER_STAGE_ALL_GRAPHICS"),
3335 std::make_pair(0x7FFFFFFF, "VK_SHADER_STAGE_ALL"),
3336 std::make_pair(1ULL << 8, "VK_SHADER_STAGE_RAYGEN_BIT_KHR"),
3337 std::make_pair(1ULL << 9, "VK_SHADER_STAGE_ANY_HIT_BIT_KHR"),
3338 std::make_pair(1ULL << 10, "VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR"),
3339 std::make_pair(1ULL << 11, "VK_SHADER_STAGE_MISS_BIT_KHR"),
3340 std::make_pair(1ULL << 12, "VK_SHADER_STAGE_INTERSECTION_BIT_KHR"),
3341 std::make_pair(1ULL << 13, "VK_SHADER_STAGE_CALLABLE_BIT_KHR"),
3342 std::make_pair(1ULL << 6, "VK_SHADER_STAGE_TASK_BIT_NV"),
3343 std::make_pair(1ULL << 7, "VK_SHADER_STAGE_MESH_BIT_NV"),
3344 std::make_pair(1ULL << 14, "VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI"),
3345 };
print_VkShaderStageFlagBits(VkShaderStageFlagBits obj,const std::string & str,bool commaNeeded=true)3346 static void print_VkShaderStageFlagBits(VkShaderStageFlagBits obj, const std::string &str, bool commaNeeded = true)
3347 {
3348 PRINT_SPACE
3349 if (str != "")
3350 _OUT << "\"" << str << "\""
3351 << " : ";
3352 if (commaNeeded)
3353 _OUT << "\"" << VkShaderStageFlagBits_map[obj] << "\"," << std::endl;
3354 else
3355 _OUT << "\"" << VkShaderStageFlagBits_map[obj] << "\"" << std::endl;
3356 }
print_VkShaderStageFlagBits(const VkShaderStageFlagBits * obj,const std::string & str,bool commaNeeded=true)3357 static void print_VkShaderStageFlagBits(const VkShaderStageFlagBits *obj, const std::string &str,
3358 bool commaNeeded = true)
3359 {
3360 PRINT_SPACE
3361 if (str != "")
3362 _OUT << "\"" << str << "\""
3363 << " : ";
3364 if (commaNeeded)
3365 _OUT << "\"" << VkShaderStageFlagBits_map[*obj] << "\"," << std::endl;
3366 else
3367 _OUT << "\"" << VkShaderStageFlagBits_map[*obj] << "\"" << std::endl;
3368 }
3369
3370 static std::map<uint64_t, std::string> VkCullModeFlagBits_map = {
3371 std::make_pair(0, "VK_CULL_MODE_NONE"),
3372 std::make_pair(1ULL << 0, "VK_CULL_MODE_FRONT_BIT"),
3373 std::make_pair(1ULL << 1, "VK_CULL_MODE_BACK_BIT"),
3374 std::make_pair(0x00000003, "VK_CULL_MODE_FRONT_AND_BACK"),
3375 };
print_VkCullModeFlagBits(VkCullModeFlagBits obj,const std::string & str,bool commaNeeded=true)3376 static void print_VkCullModeFlagBits(VkCullModeFlagBits obj, const std::string &str, bool commaNeeded = true)
3377 {
3378 PRINT_SPACE
3379 if (str != "")
3380 _OUT << "\"" << str << "\""
3381 << " : ";
3382 if (commaNeeded)
3383 _OUT << "\"" << VkCullModeFlagBits_map[obj] << "\"," << std::endl;
3384 else
3385 _OUT << "\"" << VkCullModeFlagBits_map[obj] << "\"" << std::endl;
3386 }
print_VkCullModeFlagBits(const VkCullModeFlagBits * obj,const std::string & str,bool commaNeeded=true)3387 static void print_VkCullModeFlagBits(const VkCullModeFlagBits *obj, const std::string &str, bool commaNeeded = true)
3388 {
3389 PRINT_SPACE
3390 if (str != "")
3391 _OUT << "\"" << str << "\""
3392 << " : ";
3393 if (commaNeeded)
3394 _OUT << "\"" << VkCullModeFlagBits_map[*obj] << "\"," << std::endl;
3395 else
3396 _OUT << "\"" << VkCullModeFlagBits_map[*obj] << "\"" << std::endl;
3397 }
3398
3399 static std::map<uint64_t, std::string> VkDynamicState_map = {
3400 std::make_pair(0, "VK_DYNAMIC_STATE_VIEWPORT"),
3401 std::make_pair(1, "VK_DYNAMIC_STATE_SCISSOR"),
3402 std::make_pair(2, "VK_DYNAMIC_STATE_LINE_WIDTH"),
3403 std::make_pair(3, "VK_DYNAMIC_STATE_DEPTH_BIAS"),
3404 std::make_pair(4, "VK_DYNAMIC_STATE_BLEND_CONSTANTS"),
3405 std::make_pair(5, "VK_DYNAMIC_STATE_DEPTH_BOUNDS"),
3406 std::make_pair(6, "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK"),
3407 std::make_pair(7, "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK"),
3408 std::make_pair(8, "VK_DYNAMIC_STATE_STENCIL_REFERENCE"),
3409 std::make_pair(1000087000, "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV"),
3410 std::make_pair(1000099000, "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT"),
3411 std::make_pair(1000143000, "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT"),
3412 std::make_pair(1000347000, "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR"),
3413 std::make_pair(1000164004, "VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV"),
3414 std::make_pair(1000164006, "VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV"),
3415 std::make_pair(1000205001, "VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV"),
3416 std::make_pair(1000226000, "VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR"),
3417 std::make_pair(1000259000, "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT"),
3418 std::make_pair(1000267000, "VK_DYNAMIC_STATE_CULL_MODE_EXT"),
3419 std::make_pair(1000267001, "VK_DYNAMIC_STATE_FRONT_FACE_EXT"),
3420 std::make_pair(1000267002, "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT"),
3421 std::make_pair(1000267003, "VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT"),
3422 std::make_pair(1000267004, "VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT"),
3423 std::make_pair(1000267005, "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT"),
3424 std::make_pair(1000267006, "VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT"),
3425 std::make_pair(1000267007, "VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT"),
3426 std::make_pair(1000267008, "VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT"),
3427 std::make_pair(1000267009, "VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT"),
3428 std::make_pair(1000267010, "VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT"),
3429 std::make_pair(1000267011, "VK_DYNAMIC_STATE_STENCIL_OP_EXT"),
3430 std::make_pair(1000352000, "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT"),
3431 std::make_pair(1000377000, "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT"),
3432 std::make_pair(1000377001, "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT"),
3433 std::make_pair(1000377002, "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT"),
3434 std::make_pair(1000377003, "VK_DYNAMIC_STATE_LOGIC_OP_EXT"),
3435 std::make_pair(1000377004, "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT"),
3436 std::make_pair(1000381000, "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT"),
3437 };
print_VkDynamicState(VkDynamicState obj,const std::string & str,bool commaNeeded=true)3438 static void print_VkDynamicState(VkDynamicState obj, const std::string &str, bool commaNeeded = true)
3439 {
3440 PRINT_SPACE
3441 if (str != "")
3442 _OUT << "\"" << str << "\""
3443 << " : ";
3444 if (commaNeeded)
3445 _OUT << "\"" << VkDynamicState_map[obj] << "\"," << std::endl;
3446 else
3447 _OUT << "\"" << VkDynamicState_map[obj] << "\"" << std::endl;
3448 }
print_VkDynamicState(const VkDynamicState * obj,const std::string & str,bool commaNeeded=true)3449 static void print_VkDynamicState(const VkDynamicState *obj, const std::string &str, bool commaNeeded = true)
3450 {
3451 PRINT_SPACE
3452 if (str != "")
3453 _OUT << "\"" << str << "\""
3454 << " : ";
3455 if (commaNeeded)
3456 _OUT << "\"" << VkDynamicState_map[*obj] << "\"," << std::endl;
3457 else
3458 _OUT << "\"" << VkDynamicState_map[*obj] << "\"" << std::endl;
3459 }
3460
3461 static std::map<uint64_t, std::string> VkFrontFace_map = {
3462 std::make_pair(0, "VK_FRONT_FACE_COUNTER_CLOCKWISE"),
3463 std::make_pair(1, "VK_FRONT_FACE_CLOCKWISE"),
3464 };
print_VkFrontFace(VkFrontFace obj,const std::string & str,bool commaNeeded=true)3465 static void print_VkFrontFace(VkFrontFace obj, const std::string &str, bool commaNeeded = true)
3466 {
3467 PRINT_SPACE
3468 if (str != "")
3469 _OUT << "\"" << str << "\""
3470 << " : ";
3471 if (commaNeeded)
3472 _OUT << "\"" << VkFrontFace_map[obj] << "\"," << std::endl;
3473 else
3474 _OUT << "\"" << VkFrontFace_map[obj] << "\"" << std::endl;
3475 }
print_VkFrontFace(const VkFrontFace * obj,const std::string & str,bool commaNeeded=true)3476 static void print_VkFrontFace(const VkFrontFace *obj, const std::string &str, bool commaNeeded = true)
3477 {
3478 PRINT_SPACE
3479 if (str != "")
3480 _OUT << "\"" << str << "\""
3481 << " : ";
3482 if (commaNeeded)
3483 _OUT << "\"" << VkFrontFace_map[*obj] << "\"," << std::endl;
3484 else
3485 _OUT << "\"" << VkFrontFace_map[*obj] << "\"" << std::endl;
3486 }
3487
3488 static std::map<uint64_t, std::string> VkVertexInputRate_map = {
3489 std::make_pair(0, "VK_VERTEX_INPUT_RATE_VERTEX"),
3490 std::make_pair(1, "VK_VERTEX_INPUT_RATE_INSTANCE"),
3491 };
print_VkVertexInputRate(VkVertexInputRate obj,const std::string & str,bool commaNeeded=true)3492 static void print_VkVertexInputRate(VkVertexInputRate obj, const std::string &str, bool commaNeeded = true)
3493 {
3494 PRINT_SPACE
3495 if (str != "")
3496 _OUT << "\"" << str << "\""
3497 << " : ";
3498 if (commaNeeded)
3499 _OUT << "\"" << VkVertexInputRate_map[obj] << "\"," << std::endl;
3500 else
3501 _OUT << "\"" << VkVertexInputRate_map[obj] << "\"" << std::endl;
3502 }
print_VkVertexInputRate(const VkVertexInputRate * obj,const std::string & str,bool commaNeeded=true)3503 static void print_VkVertexInputRate(const VkVertexInputRate *obj, const std::string &str, bool commaNeeded = true)
3504 {
3505 PRINT_SPACE
3506 if (str != "")
3507 _OUT << "\"" << str << "\""
3508 << " : ";
3509 if (commaNeeded)
3510 _OUT << "\"" << VkVertexInputRate_map[*obj] << "\"," << std::endl;
3511 else
3512 _OUT << "\"" << VkVertexInputRate_map[*obj] << "\"" << std::endl;
3513 }
3514
3515 static std::map<uint64_t, std::string> VkPrimitiveTopology_map = {
3516 std::make_pair(0, "VK_PRIMITIVE_TOPOLOGY_POINT_LIST"),
3517 std::make_pair(1, "VK_PRIMITIVE_TOPOLOGY_LINE_LIST"),
3518 std::make_pair(2, "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP"),
3519 std::make_pair(3, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST"),
3520 std::make_pair(4, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP"),
3521 std::make_pair(5, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN"),
3522 std::make_pair(6, "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY"),
3523 std::make_pair(7, "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY"),
3524 std::make_pair(8, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY"),
3525 std::make_pair(9, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY"),
3526 std::make_pair(10, "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST"),
3527 };
print_VkPrimitiveTopology(VkPrimitiveTopology obj,const std::string & str,bool commaNeeded=true)3528 static void print_VkPrimitiveTopology(VkPrimitiveTopology obj, const std::string &str, bool commaNeeded = true)
3529 {
3530 PRINT_SPACE
3531 if (str != "")
3532 _OUT << "\"" << str << "\""
3533 << " : ";
3534 if (commaNeeded)
3535 _OUT << "\"" << VkPrimitiveTopology_map[obj] << "\"," << std::endl;
3536 else
3537 _OUT << "\"" << VkPrimitiveTopology_map[obj] << "\"" << std::endl;
3538 }
print_VkPrimitiveTopology(const VkPrimitiveTopology * obj,const std::string & str,bool commaNeeded=true)3539 static void print_VkPrimitiveTopology(const VkPrimitiveTopology *obj, const std::string &str, bool commaNeeded = true)
3540 {
3541 PRINT_SPACE
3542 if (str != "")
3543 _OUT << "\"" << str << "\""
3544 << " : ";
3545 if (commaNeeded)
3546 _OUT << "\"" << VkPrimitiveTopology_map[*obj] << "\"," << std::endl;
3547 else
3548 _OUT << "\"" << VkPrimitiveTopology_map[*obj] << "\"" << std::endl;
3549 }
3550
3551 static std::map<uint64_t, std::string> VkPolygonMode_map = {
3552 std::make_pair(0, "VK_POLYGON_MODE_FILL"),
3553 std::make_pair(1, "VK_POLYGON_MODE_LINE"),
3554 std::make_pair(2, "VK_POLYGON_MODE_POINT"),
3555 std::make_pair(1000153000, "VK_POLYGON_MODE_FILL_RECTANGLE_NV"),
3556 };
print_VkPolygonMode(VkPolygonMode obj,const std::string & str,bool commaNeeded=true)3557 static void print_VkPolygonMode(VkPolygonMode obj, const std::string &str, bool commaNeeded = true)
3558 {
3559 PRINT_SPACE
3560 if (str != "")
3561 _OUT << "\"" << str << "\""
3562 << " : ";
3563 if (commaNeeded)
3564 _OUT << "\"" << VkPolygonMode_map[obj] << "\"," << std::endl;
3565 else
3566 _OUT << "\"" << VkPolygonMode_map[obj] << "\"" << std::endl;
3567 }
print_VkPolygonMode(const VkPolygonMode * obj,const std::string & str,bool commaNeeded=true)3568 static void print_VkPolygonMode(const VkPolygonMode *obj, const std::string &str, bool commaNeeded = true)
3569 {
3570 PRINT_SPACE
3571 if (str != "")
3572 _OUT << "\"" << str << "\""
3573 << " : ";
3574 if (commaNeeded)
3575 _OUT << "\"" << VkPolygonMode_map[*obj] << "\"," << std::endl;
3576 else
3577 _OUT << "\"" << VkPolygonMode_map[*obj] << "\"" << std::endl;
3578 }
3579
3580 static std::map<uint64_t, std::string> VkStencilOp_map = {
3581 std::make_pair(0, "VK_STENCIL_OP_KEEP"),
3582 std::make_pair(1, "VK_STENCIL_OP_ZERO"),
3583 std::make_pair(2, "VK_STENCIL_OP_REPLACE"),
3584 std::make_pair(3, "VK_STENCIL_OP_INCREMENT_AND_CLAMP"),
3585 std::make_pair(4, "VK_STENCIL_OP_DECREMENT_AND_CLAMP"),
3586 std::make_pair(5, "VK_STENCIL_OP_INVERT"),
3587 std::make_pair(6, "VK_STENCIL_OP_INCREMENT_AND_WRAP"),
3588 std::make_pair(7, "VK_STENCIL_OP_DECREMENT_AND_WRAP"),
3589 };
print_VkStencilOp(VkStencilOp obj,const std::string & str,bool commaNeeded=true)3590 static void print_VkStencilOp(VkStencilOp obj, const std::string &str, bool commaNeeded = true)
3591 {
3592 PRINT_SPACE
3593 if (str != "")
3594 _OUT << "\"" << str << "\""
3595 << " : ";
3596 if (commaNeeded)
3597 _OUT << "\"" << VkStencilOp_map[obj] << "\"," << std::endl;
3598 else
3599 _OUT << "\"" << VkStencilOp_map[obj] << "\"" << std::endl;
3600 }
print_VkStencilOp(const VkStencilOp * obj,const std::string & str,bool commaNeeded=true)3601 static void print_VkStencilOp(const VkStencilOp *obj, const std::string &str, bool commaNeeded = true)
3602 {
3603 PRINT_SPACE
3604 if (str != "")
3605 _OUT << "\"" << str << "\""
3606 << " : ";
3607 if (commaNeeded)
3608 _OUT << "\"" << VkStencilOp_map[*obj] << "\"," << std::endl;
3609 else
3610 _OUT << "\"" << VkStencilOp_map[*obj] << "\"" << std::endl;
3611 }
3612
3613 static std::map<uint64_t, std::string> VkLogicOp_map = {
3614 std::make_pair(0, "VK_LOGIC_OP_CLEAR"),
3615 std::make_pair(1, "VK_LOGIC_OP_AND"),
3616 std::make_pair(2, "VK_LOGIC_OP_AND_REVERSE"),
3617 std::make_pair(3, "VK_LOGIC_OP_COPY"),
3618 std::make_pair(4, "VK_LOGIC_OP_AND_INVERTED"),
3619 std::make_pair(5, "VK_LOGIC_OP_NO_OP"),
3620 std::make_pair(6, "VK_LOGIC_OP_XOR"),
3621 std::make_pair(7, "VK_LOGIC_OP_OR"),
3622 std::make_pair(8, "VK_LOGIC_OP_NOR"),
3623 std::make_pair(9, "VK_LOGIC_OP_EQUIVALENT"),
3624 std::make_pair(10, "VK_LOGIC_OP_INVERT"),
3625 std::make_pair(11, "VK_LOGIC_OP_OR_REVERSE"),
3626 std::make_pair(12, "VK_LOGIC_OP_COPY_INVERTED"),
3627 std::make_pair(13, "VK_LOGIC_OP_OR_INVERTED"),
3628 std::make_pair(14, "VK_LOGIC_OP_NAND"),
3629 std::make_pair(15, "VK_LOGIC_OP_SET"),
3630 };
print_VkLogicOp(VkLogicOp obj,const std::string & str,bool commaNeeded=true)3631 static void print_VkLogicOp(VkLogicOp obj, const std::string &str, bool commaNeeded = true)
3632 {
3633 PRINT_SPACE
3634 if (str != "")
3635 _OUT << "\"" << str << "\""
3636 << " : ";
3637 if (commaNeeded)
3638 _OUT << "\"" << VkLogicOp_map[obj] << "\"," << std::endl;
3639 else
3640 _OUT << "\"" << VkLogicOp_map[obj] << "\"" << std::endl;
3641 }
print_VkLogicOp(const VkLogicOp * obj,const std::string & str,bool commaNeeded=true)3642 static void print_VkLogicOp(const VkLogicOp *obj, const std::string &str, bool commaNeeded = true)
3643 {
3644 PRINT_SPACE
3645 if (str != "")
3646 _OUT << "\"" << str << "\""
3647 << " : ";
3648 if (commaNeeded)
3649 _OUT << "\"" << VkLogicOp_map[*obj] << "\"," << std::endl;
3650 else
3651 _OUT << "\"" << VkLogicOp_map[*obj] << "\"" << std::endl;
3652 }
3653
3654 static std::map<uint64_t, std::string> VkBorderColor_map = {
3655 std::make_pair(0, "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK"),
3656 std::make_pair(1, "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK"),
3657 std::make_pair(2, "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK"),
3658 std::make_pair(3, "VK_BORDER_COLOR_INT_OPAQUE_BLACK"),
3659 std::make_pair(4, "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE"),
3660 std::make_pair(5, "VK_BORDER_COLOR_INT_OPAQUE_WHITE"),
3661 std::make_pair(1000287003, "VK_BORDER_COLOR_FLOAT_CUSTOM_EXT"),
3662 std::make_pair(1000287004, "VK_BORDER_COLOR_INT_CUSTOM_EXT"),
3663 };
print_VkBorderColor(VkBorderColor obj,const std::string & str,bool commaNeeded=true)3664 static void print_VkBorderColor(VkBorderColor obj, const std::string &str, bool commaNeeded = true)
3665 {
3666 PRINT_SPACE
3667 if (str != "")
3668 _OUT << "\"" << str << "\""
3669 << " : ";
3670 if (commaNeeded)
3671 _OUT << "\"" << VkBorderColor_map[obj] << "\"," << std::endl;
3672 else
3673 _OUT << "\"" << VkBorderColor_map[obj] << "\"" << std::endl;
3674 }
print_VkBorderColor(const VkBorderColor * obj,const std::string & str,bool commaNeeded=true)3675 static void print_VkBorderColor(const VkBorderColor *obj, const std::string &str, bool commaNeeded = true)
3676 {
3677 PRINT_SPACE
3678 if (str != "")
3679 _OUT << "\"" << str << "\""
3680 << " : ";
3681 if (commaNeeded)
3682 _OUT << "\"" << VkBorderColor_map[*obj] << "\"," << std::endl;
3683 else
3684 _OUT << "\"" << VkBorderColor_map[*obj] << "\"" << std::endl;
3685 }
3686
3687 static std::map<uint64_t, std::string> VkFilter_map = {
3688 std::make_pair(0, "VK_FILTER_NEAREST"),
3689 std::make_pair(1, "VK_FILTER_LINEAR"),
3690 std::make_pair(1000015000, "VK_FILTER_CUBIC_IMG"),
3691 };
print_VkFilter(VkFilter obj,const std::string & str,bool commaNeeded=true)3692 static void print_VkFilter(VkFilter obj, const std::string &str, bool commaNeeded = true)
3693 {
3694 PRINT_SPACE
3695 if (str != "")
3696 _OUT << "\"" << str << "\""
3697 << " : ";
3698 if (commaNeeded)
3699 _OUT << "\"" << VkFilter_map[obj] << "\"," << std::endl;
3700 else
3701 _OUT << "\"" << VkFilter_map[obj] << "\"" << std::endl;
3702 }
print_VkFilter(const VkFilter * obj,const std::string & str,bool commaNeeded=true)3703 static void print_VkFilter(const VkFilter *obj, const std::string &str, bool commaNeeded = true)
3704 {
3705 PRINT_SPACE
3706 if (str != "")
3707 _OUT << "\"" << str << "\""
3708 << " : ";
3709 if (commaNeeded)
3710 _OUT << "\"" << VkFilter_map[*obj] << "\"," << std::endl;
3711 else
3712 _OUT << "\"" << VkFilter_map[*obj] << "\"" << std::endl;
3713 }
3714
3715 static std::map<uint64_t, std::string> VkSamplerAddressMode_map = {
3716 std::make_pair(0, "VK_SAMPLER_ADDRESS_MODE_REPEAT"),
3717 std::make_pair(1, "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT"),
3718 std::make_pair(2, "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE"),
3719 std::make_pair(3, "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER"),
3720 std::make_pair(4, "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"),
3721 std::make_pair(4, "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"),
3722 };
print_VkSamplerAddressMode(VkSamplerAddressMode obj,const std::string & str,bool commaNeeded=true)3723 static void print_VkSamplerAddressMode(VkSamplerAddressMode obj, const std::string &str, bool commaNeeded = true)
3724 {
3725 PRINT_SPACE
3726 if (str != "")
3727 _OUT << "\"" << str << "\""
3728 << " : ";
3729 if (commaNeeded)
3730 _OUT << "\"" << VkSamplerAddressMode_map[obj] << "\"," << std::endl;
3731 else
3732 _OUT << "\"" << VkSamplerAddressMode_map[obj] << "\"" << std::endl;
3733 }
print_VkSamplerAddressMode(const VkSamplerAddressMode * obj,const std::string & str,bool commaNeeded=true)3734 static void print_VkSamplerAddressMode(const VkSamplerAddressMode *obj, const std::string &str, bool commaNeeded = true)
3735 {
3736 PRINT_SPACE
3737 if (str != "")
3738 _OUT << "\"" << str << "\""
3739 << " : ";
3740 if (commaNeeded)
3741 _OUT << "\"" << VkSamplerAddressMode_map[*obj] << "\"," << std::endl;
3742 else
3743 _OUT << "\"" << VkSamplerAddressMode_map[*obj] << "\"" << std::endl;
3744 }
3745
3746 static std::map<uint64_t, std::string> VkSamplerCreateFlagBits_map = {
3747 std::make_pair(1ULL << 0, "VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT"),
3748 std::make_pair(1ULL << 1, "VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT"),
3749 std::make_pair(1ULL << 3, "VK_SAMPLER_CREATE_RESERVED_3_BIT_AMD"),
3750 std::make_pair(1ULL << 2, "VK_SAMPLER_CREATE_RESERVED_2_BIT_EXT"),
3751 };
print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3752 static void print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj, const std::string &str, bool commaNeeded = true)
3753 {
3754 PRINT_SPACE
3755 if (str != "")
3756 _OUT << "\"" << str << "\""
3757 << " : ";
3758 if (commaNeeded)
3759 _OUT << "\"" << VkSamplerCreateFlagBits_map[obj] << "\"," << std::endl;
3760 else
3761 _OUT << "\"" << VkSamplerCreateFlagBits_map[obj] << "\"" << std::endl;
3762 }
print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3763 static void print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits *obj, const std::string &str,
3764 bool commaNeeded = true)
3765 {
3766 PRINT_SPACE
3767 if (str != "")
3768 _OUT << "\"" << str << "\""
3769 << " : ";
3770 if (commaNeeded)
3771 _OUT << "\"" << VkSamplerCreateFlagBits_map[*obj] << "\"," << std::endl;
3772 else
3773 _OUT << "\"" << VkSamplerCreateFlagBits_map[*obj] << "\"" << std::endl;
3774 }
3775
3776 static std::map<uint64_t, std::string> VkSamplerMipmapMode_map = {
3777 std::make_pair(0, "VK_SAMPLER_MIPMAP_MODE_NEAREST"),
3778 std::make_pair(1, "VK_SAMPLER_MIPMAP_MODE_LINEAR"),
3779 };
print_VkSamplerMipmapMode(VkSamplerMipmapMode obj,const std::string & str,bool commaNeeded=true)3780 static void print_VkSamplerMipmapMode(VkSamplerMipmapMode obj, const std::string &str, bool commaNeeded = true)
3781 {
3782 PRINT_SPACE
3783 if (str != "")
3784 _OUT << "\"" << str << "\""
3785 << " : ";
3786 if (commaNeeded)
3787 _OUT << "\"" << VkSamplerMipmapMode_map[obj] << "\"," << std::endl;
3788 else
3789 _OUT << "\"" << VkSamplerMipmapMode_map[obj] << "\"" << std::endl;
3790 }
print_VkSamplerMipmapMode(const VkSamplerMipmapMode * obj,const std::string & str,bool commaNeeded=true)3791 static void print_VkSamplerMipmapMode(const VkSamplerMipmapMode *obj, const std::string &str, bool commaNeeded = true)
3792 {
3793 PRINT_SPACE
3794 if (str != "")
3795 _OUT << "\"" << str << "\""
3796 << " : ";
3797 if (commaNeeded)
3798 _OUT << "\"" << VkSamplerMipmapMode_map[*obj] << "\"," << std::endl;
3799 else
3800 _OUT << "\"" << VkSamplerMipmapMode_map[*obj] << "\"" << std::endl;
3801 }
3802
3803 static std::map<uint64_t, std::string> VkDescriptorPoolCreateFlagBits_map = {
3804 std::make_pair(1ULL << 0, "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT"),
3805 std::make_pair(1ULL << 1, "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT"),
3806 std::make_pair(1ULL << 2, "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE"),
3807 };
print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3808 static void print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj, const std::string &str,
3809 bool commaNeeded = true)
3810 {
3811 PRINT_SPACE
3812 if (str != "")
3813 _OUT << "\"" << str << "\""
3814 << " : ";
3815 if (commaNeeded)
3816 _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[obj] << "\"," << std::endl;
3817 else
3818 _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[obj] << "\"" << std::endl;
3819 }
print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3820 static void print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits *obj, const std::string &str,
3821 bool commaNeeded = true)
3822 {
3823 PRINT_SPACE
3824 if (str != "")
3825 _OUT << "\"" << str << "\""
3826 << " : ";
3827 if (commaNeeded)
3828 _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[*obj] << "\"," << std::endl;
3829 else
3830 _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[*obj] << "\"" << std::endl;
3831 }
3832
3833 static std::map<uint64_t, std::string> VkDescriptorType_map = {
3834 std::make_pair(0, "VK_DESCRIPTOR_TYPE_SAMPLER"),
3835 std::make_pair(1, "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER"),
3836 std::make_pair(2, "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE"),
3837 std::make_pair(3, "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE"),
3838 std::make_pair(4, "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER"),
3839 std::make_pair(5, "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER"),
3840 std::make_pair(6, "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER"),
3841 std::make_pair(7, "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER"),
3842 std::make_pair(8, "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC"),
3843 std::make_pair(9, "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC"),
3844 std::make_pair(10, "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT"),
3845 std::make_pair(1000138000, "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT"),
3846 std::make_pair(1000150000, "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR"),
3847 std::make_pair(1000165000, "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV"),
3848 std::make_pair(1000351000, "VK_DESCRIPTOR_TYPE_MUTABLE_VALVE"),
3849 };
print_VkDescriptorType(VkDescriptorType obj,const std::string & str,bool commaNeeded=true)3850 static void print_VkDescriptorType(VkDescriptorType obj, const std::string &str, bool commaNeeded = true)
3851 {
3852 PRINT_SPACE
3853 if (str != "")
3854 _OUT << "\"" << str << "\""
3855 << " : ";
3856 if (commaNeeded)
3857 _OUT << "\"" << VkDescriptorType_map[obj] << "\"," << std::endl;
3858 else
3859 _OUT << "\"" << VkDescriptorType_map[obj] << "\"" << std::endl;
3860 }
print_VkDescriptorType(const VkDescriptorType * obj,const std::string & str,bool commaNeeded=true)3861 static void print_VkDescriptorType(const VkDescriptorType *obj, const std::string &str, bool commaNeeded = true)
3862 {
3863 PRINT_SPACE
3864 if (str != "")
3865 _OUT << "\"" << str << "\""
3866 << " : ";
3867 if (commaNeeded)
3868 _OUT << "\"" << VkDescriptorType_map[*obj] << "\"," << std::endl;
3869 else
3870 _OUT << "\"" << VkDescriptorType_map[*obj] << "\"" << std::endl;
3871 }
3872
3873 static std::map<uint64_t, std::string> VkDescriptorSetLayoutCreateFlagBits_map = {
3874 std::make_pair(1ULL << 1, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT"),
3875 std::make_pair(1ULL << 0, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR"),
3876 std::make_pair(1ULL << 4, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_4_BIT_AMD"),
3877 std::make_pair(1ULL << 3, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_3_BIT_AMD"),
3878 std::make_pair(1ULL << 2, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE"),
3879 };
print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3880 static void print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj, const std::string &str,
3881 bool commaNeeded = true)
3882 {
3883 PRINT_SPACE
3884 if (str != "")
3885 _OUT << "\"" << str << "\""
3886 << " : ";
3887 if (commaNeeded)
3888 _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[obj] << "\"," << std::endl;
3889 else
3890 _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[obj] << "\"" << std::endl;
3891 }
print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3892 static void print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits *obj,
3893 const std::string &str, bool commaNeeded = true)
3894 {
3895 PRINT_SPACE
3896 if (str != "")
3897 _OUT << "\"" << str << "\""
3898 << " : ";
3899 if (commaNeeded)
3900 _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[*obj] << "\"," << std::endl;
3901 else
3902 _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[*obj] << "\"" << std::endl;
3903 }
3904
3905 static std::map<uint64_t, std::string> VkAttachmentDescriptionFlagBits_map = {
3906 std::make_pair(1ULL << 0, "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT"),
3907 };
print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj,const std::string & str,bool commaNeeded=true)3908 static void print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj, const std::string &str,
3909 bool commaNeeded = true)
3910 {
3911 PRINT_SPACE
3912 if (str != "")
3913 _OUT << "\"" << str << "\""
3914 << " : ";
3915 if (commaNeeded)
3916 _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[obj] << "\"," << std::endl;
3917 else
3918 _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[obj] << "\"" << std::endl;
3919 }
print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits * obj,const std::string & str,bool commaNeeded=true)3920 static void print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits *obj, const std::string &str,
3921 bool commaNeeded = true)
3922 {
3923 PRINT_SPACE
3924 if (str != "")
3925 _OUT << "\"" << str << "\""
3926 << " : ";
3927 if (commaNeeded)
3928 _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[*obj] << "\"," << std::endl;
3929 else
3930 _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[*obj] << "\"" << std::endl;
3931 }
3932
3933 static std::map<uint64_t, std::string> VkAttachmentLoadOp_map = {
3934 std::make_pair(0, "VK_ATTACHMENT_LOAD_OP_LOAD"),
3935 std::make_pair(1, "VK_ATTACHMENT_LOAD_OP_CLEAR"),
3936 std::make_pair(2, "VK_ATTACHMENT_LOAD_OP_DONT_CARE"),
3937 std::make_pair(1000400000, "VK_ATTACHMENT_LOAD_OP_NONE_EXT"),
3938 };
print_VkAttachmentLoadOp(VkAttachmentLoadOp obj,const std::string & str,bool commaNeeded=true)3939 static void print_VkAttachmentLoadOp(VkAttachmentLoadOp obj, const std::string &str, bool commaNeeded = true)
3940 {
3941 PRINT_SPACE
3942 if (str != "")
3943 _OUT << "\"" << str << "\""
3944 << " : ";
3945 if (commaNeeded)
3946 _OUT << "\"" << VkAttachmentLoadOp_map[obj] << "\"," << std::endl;
3947 else
3948 _OUT << "\"" << VkAttachmentLoadOp_map[obj] << "\"" << std::endl;
3949 }
print_VkAttachmentLoadOp(const VkAttachmentLoadOp * obj,const std::string & str,bool commaNeeded=true)3950 static void print_VkAttachmentLoadOp(const VkAttachmentLoadOp *obj, const std::string &str, bool commaNeeded = true)
3951 {
3952 PRINT_SPACE
3953 if (str != "")
3954 _OUT << "\"" << str << "\""
3955 << " : ";
3956 if (commaNeeded)
3957 _OUT << "\"" << VkAttachmentLoadOp_map[*obj] << "\"," << std::endl;
3958 else
3959 _OUT << "\"" << VkAttachmentLoadOp_map[*obj] << "\"" << std::endl;
3960 }
3961
3962 static std::map<uint64_t, std::string> VkAttachmentStoreOp_map = {
3963 std::make_pair(0, "VK_ATTACHMENT_STORE_OP_STORE"),
3964 std::make_pair(1, "VK_ATTACHMENT_STORE_OP_DONT_CARE"),
3965 std::make_pair(1000301000, "VK_ATTACHMENT_STORE_OP_NONE_KHR"),
3966 };
print_VkAttachmentStoreOp(VkAttachmentStoreOp obj,const std::string & str,bool commaNeeded=true)3967 static void print_VkAttachmentStoreOp(VkAttachmentStoreOp obj, const std::string &str, bool commaNeeded = true)
3968 {
3969 PRINT_SPACE
3970 if (str != "")
3971 _OUT << "\"" << str << "\""
3972 << " : ";
3973 if (commaNeeded)
3974 _OUT << "\"" << VkAttachmentStoreOp_map[obj] << "\"," << std::endl;
3975 else
3976 _OUT << "\"" << VkAttachmentStoreOp_map[obj] << "\"" << std::endl;
3977 }
print_VkAttachmentStoreOp(const VkAttachmentStoreOp * obj,const std::string & str,bool commaNeeded=true)3978 static void print_VkAttachmentStoreOp(const VkAttachmentStoreOp *obj, const std::string &str, bool commaNeeded = true)
3979 {
3980 PRINT_SPACE
3981 if (str != "")
3982 _OUT << "\"" << str << "\""
3983 << " : ";
3984 if (commaNeeded)
3985 _OUT << "\"" << VkAttachmentStoreOp_map[*obj] << "\"," << std::endl;
3986 else
3987 _OUT << "\"" << VkAttachmentStoreOp_map[*obj] << "\"" << std::endl;
3988 }
3989
3990 static std::map<uint64_t, std::string> VkDependencyFlagBits_map = {
3991 std::make_pair(1ULL << 0, "VK_DEPENDENCY_BY_REGION_BIT"),
3992 std::make_pair(1ULL << 2, "VK_DEPENDENCY_DEVICE_GROUP_BIT"),
3993 std::make_pair(1ULL << 1, "VK_DEPENDENCY_VIEW_LOCAL_BIT"),
3994 };
print_VkDependencyFlagBits(VkDependencyFlagBits obj,const std::string & str,bool commaNeeded=true)3995 static void print_VkDependencyFlagBits(VkDependencyFlagBits obj, const std::string &str, bool commaNeeded = true)
3996 {
3997 PRINT_SPACE
3998 if (str != "")
3999 _OUT << "\"" << str << "\""
4000 << " : ";
4001 if (commaNeeded)
4002 _OUT << "\"" << VkDependencyFlagBits_map[obj] << "\"," << std::endl;
4003 else
4004 _OUT << "\"" << VkDependencyFlagBits_map[obj] << "\"" << std::endl;
4005 }
print_VkDependencyFlagBits(const VkDependencyFlagBits * obj,const std::string & str,bool commaNeeded=true)4006 static void print_VkDependencyFlagBits(const VkDependencyFlagBits *obj, const std::string &str, bool commaNeeded = true)
4007 {
4008 PRINT_SPACE
4009 if (str != "")
4010 _OUT << "\"" << str << "\""
4011 << " : ";
4012 if (commaNeeded)
4013 _OUT << "\"" << VkDependencyFlagBits_map[*obj] << "\"," << std::endl;
4014 else
4015 _OUT << "\"" << VkDependencyFlagBits_map[*obj] << "\"" << std::endl;
4016 }
4017
4018 static std::map<uint64_t, std::string> VkFramebufferCreateFlagBits_map = {
4019 std::make_pair(1ULL << 0, "VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT"),
4020 };
print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj,const std::string & str,bool commaNeeded=true)4021 static void print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj, const std::string &str,
4022 bool commaNeeded = true)
4023 {
4024 PRINT_SPACE
4025 if (str != "")
4026 _OUT << "\"" << str << "\""
4027 << " : ";
4028 if (commaNeeded)
4029 _OUT << "\"" << VkFramebufferCreateFlagBits_map[obj] << "\"," << std::endl;
4030 else
4031 _OUT << "\"" << VkFramebufferCreateFlagBits_map[obj] << "\"" << std::endl;
4032 }
print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)4033 static void print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits *obj, const std::string &str,
4034 bool commaNeeded = true)
4035 {
4036 PRINT_SPACE
4037 if (str != "")
4038 _OUT << "\"" << str << "\""
4039 << " : ";
4040 if (commaNeeded)
4041 _OUT << "\"" << VkFramebufferCreateFlagBits_map[*obj] << "\"," << std::endl;
4042 else
4043 _OUT << "\"" << VkFramebufferCreateFlagBits_map[*obj] << "\"" << std::endl;
4044 }
4045
4046 static std::map<uint64_t, std::string> VkPipelineBindPoint_map = {
4047 std::make_pair(0, "VK_PIPELINE_BIND_POINT_GRAPHICS"),
4048 std::make_pair(1, "VK_PIPELINE_BIND_POINT_COMPUTE"),
4049 std::make_pair(1000165000, "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR"),
4050 std::make_pair(1000369003, "VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI"),
4051 };
print_VkPipelineBindPoint(VkPipelineBindPoint obj,const std::string & str,bool commaNeeded=true)4052 static void print_VkPipelineBindPoint(VkPipelineBindPoint obj, const std::string &str, bool commaNeeded = true)
4053 {
4054 PRINT_SPACE
4055 if (str != "")
4056 _OUT << "\"" << str << "\""
4057 << " : ";
4058 if (commaNeeded)
4059 _OUT << "\"" << VkPipelineBindPoint_map[obj] << "\"," << std::endl;
4060 else
4061 _OUT << "\"" << VkPipelineBindPoint_map[obj] << "\"" << std::endl;
4062 }
print_VkPipelineBindPoint(const VkPipelineBindPoint * obj,const std::string & str,bool commaNeeded=true)4063 static void print_VkPipelineBindPoint(const VkPipelineBindPoint *obj, const std::string &str, bool commaNeeded = true)
4064 {
4065 PRINT_SPACE
4066 if (str != "")
4067 _OUT << "\"" << str << "\""
4068 << " : ";
4069 if (commaNeeded)
4070 _OUT << "\"" << VkPipelineBindPoint_map[*obj] << "\"," << std::endl;
4071 else
4072 _OUT << "\"" << VkPipelineBindPoint_map[*obj] << "\"" << std::endl;
4073 }
4074
4075 static std::map<uint64_t, std::string> VkRenderPassCreateFlagBits_map = {
4076 std::make_pair(1ULL << 0, "VK_RENDER_PASS_CREATE_RESERVED_0_BIT_KHR"),
4077 std::make_pair(1ULL << 1, "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM"),
4078 };
print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj,const std::string & str,bool commaNeeded=true)4079 static void print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj, const std::string &str,
4080 bool commaNeeded = true)
4081 {
4082 PRINT_SPACE
4083 if (str != "")
4084 _OUT << "\"" << str << "\""
4085 << " : ";
4086 if (commaNeeded)
4087 _OUT << "\"" << VkRenderPassCreateFlagBits_map[obj] << "\"," << std::endl;
4088 else
4089 _OUT << "\"" << VkRenderPassCreateFlagBits_map[obj] << "\"" << std::endl;
4090 }
print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)4091 static void print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits *obj, const std::string &str,
4092 bool commaNeeded = true)
4093 {
4094 PRINT_SPACE
4095 if (str != "")
4096 _OUT << "\"" << str << "\""
4097 << " : ";
4098 if (commaNeeded)
4099 _OUT << "\"" << VkRenderPassCreateFlagBits_map[*obj] << "\"," << std::endl;
4100 else
4101 _OUT << "\"" << VkRenderPassCreateFlagBits_map[*obj] << "\"" << std::endl;
4102 }
4103
4104 static std::map<uint64_t, std::string> VkSubpassDescriptionFlagBits_map = {
4105 std::make_pair(1ULL << 0, "VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX"),
4106 std::make_pair(1ULL << 1, "VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX"),
4107 std::make_pair(1ULL << 2, "VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM"),
4108 std::make_pair(1ULL << 3, "VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM"),
4109 std::make_pair(1ULL << 4, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM"),
4110 std::make_pair(1ULL << 5, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM"),
4111 std::make_pair(1ULL << 6, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM"),
4112 };
print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj,const std::string & str,bool commaNeeded=true)4113 static void print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj, const std::string &str,
4114 bool commaNeeded = true)
4115 {
4116 PRINT_SPACE
4117 if (str != "")
4118 _OUT << "\"" << str << "\""
4119 << " : ";
4120 if (commaNeeded)
4121 _OUT << "\"" << VkSubpassDescriptionFlagBits_map[obj] << "\"," << std::endl;
4122 else
4123 _OUT << "\"" << VkSubpassDescriptionFlagBits_map[obj] << "\"" << std::endl;
4124 }
print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits * obj,const std::string & str,bool commaNeeded=true)4125 static void print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits *obj, const std::string &str,
4126 bool commaNeeded = true)
4127 {
4128 PRINT_SPACE
4129 if (str != "")
4130 _OUT << "\"" << str << "\""
4131 << " : ";
4132 if (commaNeeded)
4133 _OUT << "\"" << VkSubpassDescriptionFlagBits_map[*obj] << "\"," << std::endl;
4134 else
4135 _OUT << "\"" << VkSubpassDescriptionFlagBits_map[*obj] << "\"" << std::endl;
4136 }
4137
4138 static std::map<uint64_t, std::string> VkCommandPoolCreateFlagBits_map = {
4139 std::make_pair(1ULL << 0, "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT"),
4140 std::make_pair(1ULL << 1, "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT"),
4141 std::make_pair(1ULL << 2, "VK_COMMAND_POOL_CREATE_PROTECTED_BIT"),
4142 };
print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj,const std::string & str,bool commaNeeded=true)4143 static void print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj, const std::string &str,
4144 bool commaNeeded = true)
4145 {
4146 PRINT_SPACE
4147 if (str != "")
4148 _OUT << "\"" << str << "\""
4149 << " : ";
4150 if (commaNeeded)
4151 _OUT << "\"" << VkCommandPoolCreateFlagBits_map[obj] << "\"," << std::endl;
4152 else
4153 _OUT << "\"" << VkCommandPoolCreateFlagBits_map[obj] << "\"" << std::endl;
4154 }
print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)4155 static void print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits *obj, const std::string &str,
4156 bool commaNeeded = true)
4157 {
4158 PRINT_SPACE
4159 if (str != "")
4160 _OUT << "\"" << str << "\""
4161 << " : ";
4162 if (commaNeeded)
4163 _OUT << "\"" << VkCommandPoolCreateFlagBits_map[*obj] << "\"," << std::endl;
4164 else
4165 _OUT << "\"" << VkCommandPoolCreateFlagBits_map[*obj] << "\"" << std::endl;
4166 }
4167
4168 static std::map<uint64_t, std::string> VkCommandPoolResetFlagBits_map = {
4169 std::make_pair(1ULL << 1, "VK_COMMAND_POOL_RESET_RESERVED_1_BIT_COREAVI"),
4170 };
print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj,const std::string & str,bool commaNeeded=true)4171 static void print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj, const std::string &str,
4172 bool commaNeeded = true)
4173 {
4174 PRINT_SPACE
4175 if (str != "")
4176 _OUT << "\"" << str << "\""
4177 << " : ";
4178 if (commaNeeded)
4179 _OUT << "\"" << VkCommandPoolResetFlagBits_map[obj] << "\"," << std::endl;
4180 else
4181 _OUT << "\"" << VkCommandPoolResetFlagBits_map[obj] << "\"" << std::endl;
4182 }
print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits * obj,const std::string & str,bool commaNeeded=true)4183 static void print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits *obj, const std::string &str,
4184 bool commaNeeded = true)
4185 {
4186 PRINT_SPACE
4187 if (str != "")
4188 _OUT << "\"" << str << "\""
4189 << " : ";
4190 if (commaNeeded)
4191 _OUT << "\"" << VkCommandPoolResetFlagBits_map[*obj] << "\"," << std::endl;
4192 else
4193 _OUT << "\"" << VkCommandPoolResetFlagBits_map[*obj] << "\"" << std::endl;
4194 }
4195
4196 static std::map<uint64_t, std::string> VkCommandBufferLevel_map = {
4197 std::make_pair(0, "VK_COMMAND_BUFFER_LEVEL_PRIMARY"),
4198 std::make_pair(1, "VK_COMMAND_BUFFER_LEVEL_SECONDARY"),
4199 };
print_VkCommandBufferLevel(VkCommandBufferLevel obj,const std::string & str,bool commaNeeded=true)4200 static void print_VkCommandBufferLevel(VkCommandBufferLevel obj, const std::string &str, bool commaNeeded = true)
4201 {
4202 PRINT_SPACE
4203 if (str != "")
4204 _OUT << "\"" << str << "\""
4205 << " : ";
4206 if (commaNeeded)
4207 _OUT << "\"" << VkCommandBufferLevel_map[obj] << "\"," << std::endl;
4208 else
4209 _OUT << "\"" << VkCommandBufferLevel_map[obj] << "\"" << std::endl;
4210 }
print_VkCommandBufferLevel(const VkCommandBufferLevel * obj,const std::string & str,bool commaNeeded=true)4211 static void print_VkCommandBufferLevel(const VkCommandBufferLevel *obj, const std::string &str, bool commaNeeded = true)
4212 {
4213 PRINT_SPACE
4214 if (str != "")
4215 _OUT << "\"" << str << "\""
4216 << " : ";
4217 if (commaNeeded)
4218 _OUT << "\"" << VkCommandBufferLevel_map[*obj] << "\"," << std::endl;
4219 else
4220 _OUT << "\"" << VkCommandBufferLevel_map[*obj] << "\"" << std::endl;
4221 }
4222
4223 static std::map<uint64_t, std::string> VkCommandBufferUsageFlagBits_map = {
4224 std::make_pair(1ULL << 0, "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT"),
4225 std::make_pair(1ULL << 1, "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT"),
4226 std::make_pair(1ULL << 2, "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT"),
4227 };
print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj,const std::string & str,bool commaNeeded=true)4228 static void print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj, const std::string &str,
4229 bool commaNeeded = true)
4230 {
4231 PRINT_SPACE
4232 if (str != "")
4233 _OUT << "\"" << str << "\""
4234 << " : ";
4235 if (commaNeeded)
4236 _OUT << "\"" << VkCommandBufferUsageFlagBits_map[obj] << "\"," << std::endl;
4237 else
4238 _OUT << "\"" << VkCommandBufferUsageFlagBits_map[obj] << "\"" << std::endl;
4239 }
print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)4240 static void print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits *obj, const std::string &str,
4241 bool commaNeeded = true)
4242 {
4243 PRINT_SPACE
4244 if (str != "")
4245 _OUT << "\"" << str << "\""
4246 << " : ";
4247 if (commaNeeded)
4248 _OUT << "\"" << VkCommandBufferUsageFlagBits_map[*obj] << "\"," << std::endl;
4249 else
4250 _OUT << "\"" << VkCommandBufferUsageFlagBits_map[*obj] << "\"" << std::endl;
4251 }
4252
4253 static std::map<uint64_t, std::string> VkQueryControlFlagBits_map = {
4254 std::make_pair(1ULL << 0, "VK_QUERY_CONTROL_PRECISE_BIT"),
4255 };
print_VkQueryControlFlagBits(VkQueryControlFlagBits obj,const std::string & str,bool commaNeeded=true)4256 static void print_VkQueryControlFlagBits(VkQueryControlFlagBits obj, const std::string &str, bool commaNeeded = true)
4257 {
4258 PRINT_SPACE
4259 if (str != "")
4260 _OUT << "\"" << str << "\""
4261 << " : ";
4262 if (commaNeeded)
4263 _OUT << "\"" << VkQueryControlFlagBits_map[obj] << "\"," << std::endl;
4264 else
4265 _OUT << "\"" << VkQueryControlFlagBits_map[obj] << "\"" << std::endl;
4266 }
print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj,const std::string & str,bool commaNeeded=true)4267 static void print_VkQueryControlFlagBits(const VkQueryControlFlagBits *obj, const std::string &str,
4268 bool commaNeeded = true)
4269 {
4270 PRINT_SPACE
4271 if (str != "")
4272 _OUT << "\"" << str << "\""
4273 << " : ";
4274 if (commaNeeded)
4275 _OUT << "\"" << VkQueryControlFlagBits_map[*obj] << "\"," << std::endl;
4276 else
4277 _OUT << "\"" << VkQueryControlFlagBits_map[*obj] << "\"" << std::endl;
4278 }
4279
4280 static std::map<uint64_t, std::string> VkCommandBufferResetFlagBits_map = {
4281 std::make_pair(1ULL << 0, "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT"),
4282 };
print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj,const std::string & str,bool commaNeeded=true)4283 static void print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj, const std::string &str,
4284 bool commaNeeded = true)
4285 {
4286 PRINT_SPACE
4287 if (str != "")
4288 _OUT << "\"" << str << "\""
4289 << " : ";
4290 if (commaNeeded)
4291 _OUT << "\"" << VkCommandBufferResetFlagBits_map[obj] << "\"," << std::endl;
4292 else
4293 _OUT << "\"" << VkCommandBufferResetFlagBits_map[obj] << "\"" << std::endl;
4294 }
print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits * obj,const std::string & str,bool commaNeeded=true)4295 static void print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits *obj, const std::string &str,
4296 bool commaNeeded = true)
4297 {
4298 PRINT_SPACE
4299 if (str != "")
4300 _OUT << "\"" << str << "\""
4301 << " : ";
4302 if (commaNeeded)
4303 _OUT << "\"" << VkCommandBufferResetFlagBits_map[*obj] << "\"," << std::endl;
4304 else
4305 _OUT << "\"" << VkCommandBufferResetFlagBits_map[*obj] << "\"" << std::endl;
4306 }
4307
4308 static std::map<uint64_t, std::string> VkIndexType_map = {
4309 std::make_pair(0, "VK_INDEX_TYPE_UINT16"),
4310 std::make_pair(1, "VK_INDEX_TYPE_UINT32"),
4311 std::make_pair(1000165000, "VK_INDEX_TYPE_NONE_KHR"),
4312 std::make_pair(1000265000, "VK_INDEX_TYPE_UINT8_EXT"),
4313 };
print_VkIndexType(VkIndexType obj,const std::string & str,bool commaNeeded=true)4314 static void print_VkIndexType(VkIndexType obj, const std::string &str, bool commaNeeded = true)
4315 {
4316 PRINT_SPACE
4317 if (str != "")
4318 _OUT << "\"" << str << "\""
4319 << " : ";
4320 if (commaNeeded)
4321 _OUT << "\"" << VkIndexType_map[obj] << "\"," << std::endl;
4322 else
4323 _OUT << "\"" << VkIndexType_map[obj] << "\"" << std::endl;
4324 }
print_VkIndexType(const VkIndexType * obj,const std::string & str,bool commaNeeded=true)4325 static void print_VkIndexType(const VkIndexType *obj, const std::string &str, bool commaNeeded = true)
4326 {
4327 PRINT_SPACE
4328 if (str != "")
4329 _OUT << "\"" << str << "\""
4330 << " : ";
4331 if (commaNeeded)
4332 _OUT << "\"" << VkIndexType_map[*obj] << "\"," << std::endl;
4333 else
4334 _OUT << "\"" << VkIndexType_map[*obj] << "\"" << std::endl;
4335 }
4336
4337 static std::map<uint64_t, std::string> VkStencilFaceFlagBits_map = {
4338 std::make_pair(1ULL << 0, "VK_STENCIL_FACE_FRONT_BIT"),
4339 std::make_pair(1ULL << 1, "VK_STENCIL_FACE_BACK_BIT"),
4340 std::make_pair(0x00000003, "VK_STENCIL_FACE_FRONT_AND_BACK"),
4341 };
print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj,const std::string & str,bool commaNeeded=true)4342 static void print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj, const std::string &str, bool commaNeeded = true)
4343 {
4344 PRINT_SPACE
4345 if (str != "")
4346 _OUT << "\"" << str << "\""
4347 << " : ";
4348 if (commaNeeded)
4349 _OUT << "\"" << VkStencilFaceFlagBits_map[obj] << "\"," << std::endl;
4350 else
4351 _OUT << "\"" << VkStencilFaceFlagBits_map[obj] << "\"" << std::endl;
4352 }
print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits * obj,const std::string & str,bool commaNeeded=true)4353 static void print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits *obj, const std::string &str,
4354 bool commaNeeded = true)
4355 {
4356 PRINT_SPACE
4357 if (str != "")
4358 _OUT << "\"" << str << "\""
4359 << " : ";
4360 if (commaNeeded)
4361 _OUT << "\"" << VkStencilFaceFlagBits_map[*obj] << "\"," << std::endl;
4362 else
4363 _OUT << "\"" << VkStencilFaceFlagBits_map[*obj] << "\"" << std::endl;
4364 }
4365
4366 static std::map<uint64_t, std::string> VkSubpassContents_map = {
4367 std::make_pair(0, "VK_SUBPASS_CONTENTS_INLINE"),
4368 std::make_pair(1, "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS"),
4369 };
print_VkSubpassContents(VkSubpassContents obj,const std::string & str,bool commaNeeded=true)4370 static void print_VkSubpassContents(VkSubpassContents obj, const std::string &str, bool commaNeeded = true)
4371 {
4372 PRINT_SPACE
4373 if (str != "")
4374 _OUT << "\"" << str << "\""
4375 << " : ";
4376 if (commaNeeded)
4377 _OUT << "\"" << VkSubpassContents_map[obj] << "\"," << std::endl;
4378 else
4379 _OUT << "\"" << VkSubpassContents_map[obj] << "\"" << std::endl;
4380 }
print_VkSubpassContents(const VkSubpassContents * obj,const std::string & str,bool commaNeeded=true)4381 static void print_VkSubpassContents(const VkSubpassContents *obj, const std::string &str, bool commaNeeded = true)
4382 {
4383 PRINT_SPACE
4384 if (str != "")
4385 _OUT << "\"" << str << "\""
4386 << " : ";
4387 if (commaNeeded)
4388 _OUT << "\"" << VkSubpassContents_map[*obj] << "\"," << std::endl;
4389 else
4390 _OUT << "\"" << VkSubpassContents_map[*obj] << "\"" << std::endl;
4391 }
4392
print_VkAccessFlags(VkAccessFlags obj,const std::string & str,bool commaNeeded=true)4393 static void print_VkAccessFlags(VkAccessFlags obj, const std::string &str, bool commaNeeded = true)
4394 {
4395 PRINT_SPACE
4396 if (str != "")
4397 _OUT << "\"" << str << "\""
4398 << " : ";
4399 const int max_bits = 64; // We don't expect the number to be larger.
4400 std::bitset<max_bits> b(obj);
4401 _OUT << "\"";
4402 if (obj == 0)
4403 _OUT << "0";
4404 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4405 {
4406 if (b[i] == 1)
4407 {
4408 bitCount++;
4409 if (bitCount < b.count())
4410 _OUT << VkAccessFlagBits_map[1ULL << i] << " | ";
4411 else
4412 _OUT << VkAccessFlagBits_map[1ULL << i];
4413 }
4414 }
4415 if (commaNeeded)
4416 _OUT << "\""
4417 << ",";
4418 else
4419 _OUT << "\""
4420 << "";
4421 _OUT << std::endl;
4422 }
print_VkAccessFlags(const VkAccessFlags * obj,const std::string & str,bool commaNeeded=true)4423 static void print_VkAccessFlags(const VkAccessFlags *obj, const std::string &str, bool commaNeeded = true)
4424 {
4425 PRINT_SPACE
4426 if (str != "")
4427 _OUT << "\"" << str << "\""
4428 << " : ";
4429 const int max_bits = 64; // We don't expect the number to be larger.
4430 std::bitset<max_bits> b(obj);
4431 _OUT << "\"";
4432 if (obj == 0)
4433 _OUT << "0";
4434 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4435 {
4436 if (b[i] == 1)
4437 {
4438 bitCount++;
4439 if (bitCount < b.count())
4440 _OUT << VkAccessFlagBits_map[1ULL << i] << " | ";
4441 else
4442 _OUT << VkAccessFlagBits_map[1ULL << i];
4443 }
4444 }
4445 if (commaNeeded)
4446 _OUT << "\""
4447 << ",";
4448 else
4449 _OUT << "\""
4450 << "";
4451 _OUT << std::endl;
4452 }
4453
print_VkImageAspectFlags(VkImageAspectFlags obj,const std::string & str,bool commaNeeded=true)4454 static void print_VkImageAspectFlags(VkImageAspectFlags obj, const std::string &str, bool commaNeeded = true)
4455 {
4456 PRINT_SPACE
4457 if (str != "")
4458 _OUT << "\"" << str << "\""
4459 << " : ";
4460 const int max_bits = 64; // We don't expect the number to be larger.
4461 std::bitset<max_bits> b(obj);
4462 _OUT << "\"";
4463 if (obj == 0)
4464 _OUT << "0";
4465 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4466 {
4467 if (b[i] == 1)
4468 {
4469 bitCount++;
4470 if (bitCount < b.count())
4471 _OUT << VkImageAspectFlagBits_map[1ULL << i] << " | ";
4472 else
4473 _OUT << VkImageAspectFlagBits_map[1ULL << i];
4474 }
4475 }
4476 if (commaNeeded)
4477 _OUT << "\""
4478 << ",";
4479 else
4480 _OUT << "\""
4481 << "";
4482 _OUT << std::endl;
4483 }
print_VkImageAspectFlags(const VkImageAspectFlags * obj,const std::string & str,bool commaNeeded=true)4484 static void print_VkImageAspectFlags(const VkImageAspectFlags *obj, const std::string &str, bool commaNeeded = true)
4485 {
4486 PRINT_SPACE
4487 if (str != "")
4488 _OUT << "\"" << str << "\""
4489 << " : ";
4490 const int max_bits = 64; // We don't expect the number to be larger.
4491 std::bitset<max_bits> b(obj);
4492 _OUT << "\"";
4493 if (obj == 0)
4494 _OUT << "0";
4495 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4496 {
4497 if (b[i] == 1)
4498 {
4499 bitCount++;
4500 if (bitCount < b.count())
4501 _OUT << VkImageAspectFlagBits_map[1ULL << i] << " | ";
4502 else
4503 _OUT << VkImageAspectFlagBits_map[1ULL << i];
4504 }
4505 }
4506 if (commaNeeded)
4507 _OUT << "\""
4508 << ",";
4509 else
4510 _OUT << "\""
4511 << "";
4512 _OUT << std::endl;
4513 }
4514
print_VkFormatFeatureFlags(VkFormatFeatureFlags obj,const std::string & str,bool commaNeeded=true)4515 static void print_VkFormatFeatureFlags(VkFormatFeatureFlags obj, const std::string &str, bool commaNeeded = true)
4516 {
4517 PRINT_SPACE
4518 if (str != "")
4519 _OUT << "\"" << str << "\""
4520 << " : ";
4521 const int max_bits = 64; // We don't expect the number to be larger.
4522 std::bitset<max_bits> b(obj);
4523 _OUT << "\"";
4524 if (obj == 0)
4525 _OUT << "0";
4526 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4527 {
4528 if (b[i] == 1)
4529 {
4530 bitCount++;
4531 if (bitCount < b.count())
4532 _OUT << VkFormatFeatureFlagBits_map[1ULL << i] << " | ";
4533 else
4534 _OUT << VkFormatFeatureFlagBits_map[1ULL << i];
4535 }
4536 }
4537 if (commaNeeded)
4538 _OUT << "\""
4539 << ",";
4540 else
4541 _OUT << "\""
4542 << "";
4543 _OUT << std::endl;
4544 }
print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj,const std::string & str,bool commaNeeded=true)4545 static void print_VkFormatFeatureFlags(const VkFormatFeatureFlags *obj, const std::string &str, bool commaNeeded = true)
4546 {
4547 PRINT_SPACE
4548 if (str != "")
4549 _OUT << "\"" << str << "\""
4550 << " : ";
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)
4555 _OUT << "0";
4556 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4557 {
4558 if (b[i] == 1)
4559 {
4560 bitCount++;
4561 if (bitCount < b.count())
4562 _OUT << VkFormatFeatureFlagBits_map[1ULL << i] << " | ";
4563 else
4564 _OUT << VkFormatFeatureFlagBits_map[1ULL << i];
4565 }
4566 }
4567 if (commaNeeded)
4568 _OUT << "\""
4569 << ",";
4570 else
4571 _OUT << "\""
4572 << "";
4573 _OUT << std::endl;
4574 }
4575
print_VkImageCreateFlags(VkImageCreateFlags obj,const std::string & str,bool commaNeeded=true)4576 static void print_VkImageCreateFlags(VkImageCreateFlags obj, const std::string &str, bool commaNeeded = true)
4577 {
4578 PRINT_SPACE
4579 if (str != "")
4580 _OUT << "\"" << str << "\""
4581 << " : ";
4582 const int max_bits = 64; // We don't expect the number to be larger.
4583 std::bitset<max_bits> b(obj);
4584 _OUT << "\"";
4585 if (obj == 0)
4586 _OUT << "0";
4587 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4588 {
4589 if (b[i] == 1)
4590 {
4591 bitCount++;
4592 if (bitCount < b.count())
4593 _OUT << VkImageCreateFlagBits_map[1ULL << i] << " | ";
4594 else
4595 _OUT << VkImageCreateFlagBits_map[1ULL << i];
4596 }
4597 }
4598 if (commaNeeded)
4599 _OUT << "\""
4600 << ",";
4601 else
4602 _OUT << "\""
4603 << "";
4604 _OUT << std::endl;
4605 }
print_VkImageCreateFlags(const VkImageCreateFlags * obj,const std::string & str,bool commaNeeded=true)4606 static void print_VkImageCreateFlags(const VkImageCreateFlags *obj, const std::string &str, bool commaNeeded = true)
4607 {
4608 PRINT_SPACE
4609 if (str != "")
4610 _OUT << "\"" << str << "\""
4611 << " : ";
4612 const int max_bits = 64; // We don't expect the number to be larger.
4613 std::bitset<max_bits> b(obj);
4614 _OUT << "\"";
4615 if (obj == 0)
4616 _OUT << "0";
4617 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4618 {
4619 if (b[i] == 1)
4620 {
4621 bitCount++;
4622 if (bitCount < b.count())
4623 _OUT << VkImageCreateFlagBits_map[1ULL << i] << " | ";
4624 else
4625 _OUT << VkImageCreateFlagBits_map[1ULL << i];
4626 }
4627 }
4628 if (commaNeeded)
4629 _OUT << "\""
4630 << ",";
4631 else
4632 _OUT << "\""
4633 << "";
4634 _OUT << std::endl;
4635 }
4636
print_VkSampleCountFlags(VkSampleCountFlags obj,const std::string & str,bool commaNeeded=true)4637 static void print_VkSampleCountFlags(VkSampleCountFlags obj, const std::string &str, bool commaNeeded = true)
4638 {
4639 PRINT_SPACE
4640 if (str != "")
4641 _OUT << "\"" << str << "\""
4642 << " : ";
4643 const int max_bits = 64; // We don't expect the number to be larger.
4644 std::bitset<max_bits> b(obj);
4645 _OUT << "\"";
4646 if (obj == 0)
4647 _OUT << "0";
4648 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4649 {
4650 if (b[i] == 1)
4651 {
4652 bitCount++;
4653 if (bitCount < b.count())
4654 _OUT << VkSampleCountFlagBits_map[1ULL << i] << " | ";
4655 else
4656 _OUT << VkSampleCountFlagBits_map[1ULL << i];
4657 }
4658 }
4659 if (commaNeeded)
4660 _OUT << "\""
4661 << ",";
4662 else
4663 _OUT << "\""
4664 << "";
4665 _OUT << std::endl;
4666 }
print_VkSampleCountFlags(const VkSampleCountFlags * obj,const std::string & str,bool commaNeeded=true)4667 static void print_VkSampleCountFlags(const VkSampleCountFlags *obj, const std::string &str, bool commaNeeded = true)
4668 {
4669 PRINT_SPACE
4670 if (str != "")
4671 _OUT << "\"" << str << "\""
4672 << " : ";
4673 const int max_bits = 64; // We don't expect the number to be larger.
4674 std::bitset<max_bits> b(obj);
4675 _OUT << "\"";
4676 if (obj == 0)
4677 _OUT << "0";
4678 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4679 {
4680 if (b[i] == 1)
4681 {
4682 bitCount++;
4683 if (bitCount < b.count())
4684 _OUT << VkSampleCountFlagBits_map[1ULL << i] << " | ";
4685 else
4686 _OUT << VkSampleCountFlagBits_map[1ULL << i];
4687 }
4688 }
4689 if (commaNeeded)
4690 _OUT << "\""
4691 << ",";
4692 else
4693 _OUT << "\""
4694 << "";
4695 _OUT << std::endl;
4696 }
4697
print_VkImageUsageFlags(VkImageUsageFlags obj,const std::string & str,bool commaNeeded=true)4698 static void print_VkImageUsageFlags(VkImageUsageFlags obj, const std::string &str, bool commaNeeded = true)
4699 {
4700 PRINT_SPACE
4701 if (str != "")
4702 _OUT << "\"" << str << "\""
4703 << " : ";
4704 const int max_bits = 64; // We don't expect the number to be larger.
4705 std::bitset<max_bits> b(obj);
4706 _OUT << "\"";
4707 if (obj == 0)
4708 _OUT << "0";
4709 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4710 {
4711 if (b[i] == 1)
4712 {
4713 bitCount++;
4714 if (bitCount < b.count())
4715 _OUT << VkImageUsageFlagBits_map[1ULL << i] << " | ";
4716 else
4717 _OUT << VkImageUsageFlagBits_map[1ULL << i];
4718 }
4719 }
4720 if (commaNeeded)
4721 _OUT << "\""
4722 << ",";
4723 else
4724 _OUT << "\""
4725 << "";
4726 _OUT << std::endl;
4727 }
print_VkImageUsageFlags(const VkImageUsageFlags * obj,const std::string & str,bool commaNeeded=true)4728 static void print_VkImageUsageFlags(const VkImageUsageFlags *obj, const std::string &str, bool commaNeeded = true)
4729 {
4730 PRINT_SPACE
4731 if (str != "")
4732 _OUT << "\"" << str << "\""
4733 << " : ";
4734 const int max_bits = 64; // We don't expect the number to be larger.
4735 std::bitset<max_bits> b(obj);
4736 _OUT << "\"";
4737 if (obj == 0)
4738 _OUT << "0";
4739 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4740 {
4741 if (b[i] == 1)
4742 {
4743 bitCount++;
4744 if (bitCount < b.count())
4745 _OUT << VkImageUsageFlagBits_map[1ULL << i] << " | ";
4746 else
4747 _OUT << VkImageUsageFlagBits_map[1ULL << i];
4748 }
4749 }
4750 if (commaNeeded)
4751 _OUT << "\""
4752 << ",";
4753 else
4754 _OUT << "\""
4755 << "";
4756 _OUT << std::endl;
4757 }
4758
print_VkInstanceCreateFlags(VkInstanceCreateFlags obj,const std::string & str,bool commaNeeded=true)4759 static void print_VkInstanceCreateFlags(VkInstanceCreateFlags obj, const std::string &str, bool commaNeeded = true)
4760 {
4761 PRINT_SPACE
4762 if (commaNeeded)
4763 _OUT << "\"" << str << "\""
4764 << " : " << obj << "," << std::endl;
4765 else
4766 _OUT << "\"" << str << "\""
4767 << " : " << obj << std::endl;
4768 }
print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj,const std::string & str,bool commaNeeded=true)4769 static void print_VkInstanceCreateFlags(const VkInstanceCreateFlags *obj, const std::string &str,
4770 bool commaNeeded = true)
4771 {
4772 PRINT_SPACE
4773 if (commaNeeded)
4774 _OUT << "\"" << str << "\""
4775 << " : " << obj << "," << std::endl;
4776 else
4777 _OUT << "\"" << str << "\""
4778 << " : " << obj << std::endl;
4779 }
4780
print_VkMemoryHeapFlags(VkMemoryHeapFlags obj,const std::string & str,bool commaNeeded=true)4781 static void print_VkMemoryHeapFlags(VkMemoryHeapFlags obj, const std::string &str, bool commaNeeded = true)
4782 {
4783 PRINT_SPACE
4784 if (str != "")
4785 _OUT << "\"" << str << "\""
4786 << " : ";
4787 const int max_bits = 64; // We don't expect the number to be larger.
4788 std::bitset<max_bits> b(obj);
4789 _OUT << "\"";
4790 if (obj == 0)
4791 _OUT << "0";
4792 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4793 {
4794 if (b[i] == 1)
4795 {
4796 bitCount++;
4797 if (bitCount < b.count())
4798 _OUT << VkMemoryHeapFlagBits_map[1ULL << i] << " | ";
4799 else
4800 _OUT << VkMemoryHeapFlagBits_map[1ULL << i];
4801 }
4802 }
4803 if (commaNeeded)
4804 _OUT << "\""
4805 << ",";
4806 else
4807 _OUT << "\""
4808 << "";
4809 _OUT << std::endl;
4810 }
print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj,const std::string & str,bool commaNeeded=true)4811 static void print_VkMemoryHeapFlags(const VkMemoryHeapFlags *obj, const std::string &str, bool commaNeeded = true)
4812 {
4813 PRINT_SPACE
4814 if (str != "")
4815 _OUT << "\"" << str << "\""
4816 << " : ";
4817 const int max_bits = 64; // We don't expect the number to be larger.
4818 std::bitset<max_bits> b(obj);
4819 _OUT << "\"";
4820 if (obj == 0)
4821 _OUT << "0";
4822 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4823 {
4824 if (b[i] == 1)
4825 {
4826 bitCount++;
4827 if (bitCount < b.count())
4828 _OUT << VkMemoryHeapFlagBits_map[1ULL << i] << " | ";
4829 else
4830 _OUT << VkMemoryHeapFlagBits_map[1ULL << i];
4831 }
4832 }
4833 if (commaNeeded)
4834 _OUT << "\""
4835 << ",";
4836 else
4837 _OUT << "\""
4838 << "";
4839 _OUT << std::endl;
4840 }
4841
print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj,const std::string & str,bool commaNeeded=true)4842 static void print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj, const std::string &str, bool commaNeeded = true)
4843 {
4844 PRINT_SPACE
4845 if (str != "")
4846 _OUT << "\"" << str << "\""
4847 << " : ";
4848 const int max_bits = 64; // We don't expect the number to be larger.
4849 std::bitset<max_bits> b(obj);
4850 _OUT << "\"";
4851 if (obj == 0)
4852 _OUT << "0";
4853 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4854 {
4855 if (b[i] == 1)
4856 {
4857 bitCount++;
4858 if (bitCount < b.count())
4859 _OUT << VkMemoryPropertyFlagBits_map[1ULL << i] << " | ";
4860 else
4861 _OUT << VkMemoryPropertyFlagBits_map[1ULL << i];
4862 }
4863 }
4864 if (commaNeeded)
4865 _OUT << "\""
4866 << ",";
4867 else
4868 _OUT << "\""
4869 << "";
4870 _OUT << std::endl;
4871 }
print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj,const std::string & str,bool commaNeeded=true)4872 static void print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags *obj, const std::string &str,
4873 bool commaNeeded = true)
4874 {
4875 PRINT_SPACE
4876 if (str != "")
4877 _OUT << "\"" << str << "\""
4878 << " : ";
4879 const int max_bits = 64; // We don't expect the number to be larger.
4880 std::bitset<max_bits> b(obj);
4881 _OUT << "\"";
4882 if (obj == 0)
4883 _OUT << "0";
4884 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4885 {
4886 if (b[i] == 1)
4887 {
4888 bitCount++;
4889 if (bitCount < b.count())
4890 _OUT << VkMemoryPropertyFlagBits_map[1ULL << i] << " | ";
4891 else
4892 _OUT << VkMemoryPropertyFlagBits_map[1ULL << i];
4893 }
4894 }
4895 if (commaNeeded)
4896 _OUT << "\""
4897 << ",";
4898 else
4899 _OUT << "\""
4900 << "";
4901 _OUT << std::endl;
4902 }
4903
print_VkQueueFlags(VkQueueFlags obj,const std::string & str,bool commaNeeded=true)4904 static void print_VkQueueFlags(VkQueueFlags obj, const std::string &str, bool commaNeeded = true)
4905 {
4906 PRINT_SPACE
4907 if (str != "")
4908 _OUT << "\"" << str << "\""
4909 << " : ";
4910 const int max_bits = 64; // We don't expect the number to be larger.
4911 std::bitset<max_bits> b(obj);
4912 _OUT << "\"";
4913 if (obj == 0)
4914 _OUT << "0";
4915 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4916 {
4917 if (b[i] == 1)
4918 {
4919 bitCount++;
4920 if (bitCount < b.count())
4921 _OUT << VkQueueFlagBits_map[1ULL << i] << " | ";
4922 else
4923 _OUT << VkQueueFlagBits_map[1ULL << i];
4924 }
4925 }
4926 if (commaNeeded)
4927 _OUT << "\""
4928 << ",";
4929 else
4930 _OUT << "\""
4931 << "";
4932 _OUT << std::endl;
4933 }
print_VkQueueFlags(const VkQueueFlags * obj,const std::string & str,bool commaNeeded=true)4934 static void print_VkQueueFlags(const VkQueueFlags *obj, const std::string &str, bool commaNeeded = true)
4935 {
4936 PRINT_SPACE
4937 if (str != "")
4938 _OUT << "\"" << str << "\""
4939 << " : ";
4940 const int max_bits = 64; // We don't expect the number to be larger.
4941 std::bitset<max_bits> b(obj);
4942 _OUT << "\"";
4943 if (obj == 0)
4944 _OUT << "0";
4945 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4946 {
4947 if (b[i] == 1)
4948 {
4949 bitCount++;
4950 if (bitCount < b.count())
4951 _OUT << VkQueueFlagBits_map[1ULL << i] << " | ";
4952 else
4953 _OUT << VkQueueFlagBits_map[1ULL << i];
4954 }
4955 }
4956 if (commaNeeded)
4957 _OUT << "\""
4958 << ",";
4959 else
4960 _OUT << "\""
4961 << "";
4962 _OUT << std::endl;
4963 }
4964
print_VkDeviceCreateFlags(VkDeviceCreateFlags obj,const std::string & str,bool commaNeeded=true)4965 static void print_VkDeviceCreateFlags(VkDeviceCreateFlags obj, const std::string &str, bool commaNeeded = true)
4966 {
4967 PRINT_SPACE
4968 if (commaNeeded)
4969 _OUT << "\"" << str << "\""
4970 << " : " << obj << "," << std::endl;
4971 else
4972 _OUT << "\"" << str << "\""
4973 << " : " << obj << std::endl;
4974 }
print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj,const std::string & str,bool commaNeeded=true)4975 static void print_VkDeviceCreateFlags(const VkDeviceCreateFlags *obj, const std::string &str, bool commaNeeded = true)
4976 {
4977 PRINT_SPACE
4978 if (commaNeeded)
4979 _OUT << "\"" << str << "\""
4980 << " : " << obj << "," << std::endl;
4981 else
4982 _OUT << "\"" << str << "\""
4983 << " : " << obj << std::endl;
4984 }
4985
print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj,const std::string & str,bool commaNeeded=true)4986 static void print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj, const std::string &str,
4987 bool commaNeeded = true)
4988 {
4989 PRINT_SPACE
4990 if (str != "")
4991 _OUT << "\"" << str << "\""
4992 << " : ";
4993 const int max_bits = 64; // We don't expect the number to be larger.
4994 std::bitset<max_bits> b(obj);
4995 _OUT << "\"";
4996 if (obj == 0)
4997 _OUT << "0";
4998 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
4999 {
5000 if (b[i] == 1)
5001 {
5002 bitCount++;
5003 if (bitCount < b.count())
5004 _OUT << VkDeviceQueueCreateFlagBits_map[1ULL << i] << " | ";
5005 else
5006 _OUT << VkDeviceQueueCreateFlagBits_map[1ULL << i];
5007 }
5008 }
5009 if (commaNeeded)
5010 _OUT << "\""
5011 << ",";
5012 else
5013 _OUT << "\""
5014 << "";
5015 _OUT << std::endl;
5016 }
print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj,const std::string & str,bool commaNeeded=true)5017 static void print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags *obj, const std::string &str,
5018 bool commaNeeded = true)
5019 {
5020 PRINT_SPACE
5021 if (str != "")
5022 _OUT << "\"" << str << "\""
5023 << " : ";
5024 const int max_bits = 64; // We don't expect the number to be larger.
5025 std::bitset<max_bits> b(obj);
5026 _OUT << "\"";
5027 if (obj == 0)
5028 _OUT << "0";
5029 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5030 {
5031 if (b[i] == 1)
5032 {
5033 bitCount++;
5034 if (bitCount < b.count())
5035 _OUT << VkDeviceQueueCreateFlagBits_map[1ULL << i] << " | ";
5036 else
5037 _OUT << VkDeviceQueueCreateFlagBits_map[1ULL << i];
5038 }
5039 }
5040 if (commaNeeded)
5041 _OUT << "\""
5042 << ",";
5043 else
5044 _OUT << "\""
5045 << "";
5046 _OUT << std::endl;
5047 }
5048
print_VkPipelineStageFlags(VkPipelineStageFlags obj,const std::string & str,bool commaNeeded=true)5049 static void print_VkPipelineStageFlags(VkPipelineStageFlags obj, const std::string &str, bool commaNeeded = true)
5050 {
5051 PRINT_SPACE
5052 if (str != "")
5053 _OUT << "\"" << str << "\""
5054 << " : ";
5055 const int max_bits = 64; // We don't expect the number to be larger.
5056 std::bitset<max_bits> b(obj);
5057 _OUT << "\"";
5058 if (obj == 0)
5059 _OUT << "0";
5060 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5061 {
5062 if (b[i] == 1)
5063 {
5064 bitCount++;
5065 if (bitCount < b.count())
5066 _OUT << VkPipelineStageFlagBits_map[1ULL << i] << " | ";
5067 else
5068 _OUT << VkPipelineStageFlagBits_map[1ULL << i];
5069 }
5070 }
5071 if (commaNeeded)
5072 _OUT << "\""
5073 << ",";
5074 else
5075 _OUT << "\""
5076 << "";
5077 _OUT << std::endl;
5078 }
print_VkPipelineStageFlags(const VkPipelineStageFlags * obj,const std::string & str,bool commaNeeded=true)5079 static void print_VkPipelineStageFlags(const VkPipelineStageFlags *obj, const std::string &str, bool commaNeeded = true)
5080 {
5081 PRINT_SPACE
5082 if (str != "")
5083 _OUT << "\"" << str << "\""
5084 << " : ";
5085 const int max_bits = 64; // We don't expect the number to be larger.
5086 std::bitset<max_bits> b(obj);
5087 _OUT << "\"";
5088 if (obj == 0)
5089 _OUT << "0";
5090 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5091 {
5092 if (b[i] == 1)
5093 {
5094 bitCount++;
5095 if (bitCount < b.count())
5096 _OUT << VkPipelineStageFlagBits_map[1ULL << i] << " | ";
5097 else
5098 _OUT << VkPipelineStageFlagBits_map[1ULL << i];
5099 }
5100 }
5101 if (commaNeeded)
5102 _OUT << "\""
5103 << ",";
5104 else
5105 _OUT << "\""
5106 << "";
5107 _OUT << std::endl;
5108 }
5109
print_VkMemoryMapFlags(VkMemoryMapFlags obj,const std::string & str,bool commaNeeded=true)5110 static void print_VkMemoryMapFlags(VkMemoryMapFlags obj, const std::string &str, bool commaNeeded = true)
5111 {
5112 PRINT_SPACE
5113 if (commaNeeded)
5114 _OUT << "\"" << str << "\""
5115 << " : " << obj << "," << std::endl;
5116 else
5117 _OUT << "\"" << str << "\""
5118 << " : " << obj << std::endl;
5119 }
print_VkMemoryMapFlags(const VkMemoryMapFlags * obj,const std::string & str,bool commaNeeded=true)5120 static void print_VkMemoryMapFlags(const VkMemoryMapFlags *obj, const std::string &str, bool commaNeeded = true)
5121 {
5122 PRINT_SPACE
5123 if (commaNeeded)
5124 _OUT << "\"" << str << "\""
5125 << " : " << obj << "," << std::endl;
5126 else
5127 _OUT << "\"" << str << "\""
5128 << " : " << obj << std::endl;
5129 }
5130
print_VkFenceCreateFlags(VkFenceCreateFlags obj,const std::string & str,bool commaNeeded=true)5131 static void print_VkFenceCreateFlags(VkFenceCreateFlags obj, const std::string &str, bool commaNeeded = true)
5132 {
5133 PRINT_SPACE
5134 if (str != "")
5135 _OUT << "\"" << str << "\""
5136 << " : ";
5137 const int max_bits = 64; // We don't expect the number to be larger.
5138 std::bitset<max_bits> b(obj);
5139 _OUT << "\"";
5140 if (obj == 0)
5141 _OUT << "0";
5142 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5143 {
5144 if (b[i] == 1)
5145 {
5146 bitCount++;
5147 if (bitCount < b.count())
5148 _OUT << VkFenceCreateFlagBits_map[1ULL << i] << " | ";
5149 else
5150 _OUT << VkFenceCreateFlagBits_map[1ULL << i];
5151 }
5152 }
5153 if (commaNeeded)
5154 _OUT << "\""
5155 << ",";
5156 else
5157 _OUT << "\""
5158 << "";
5159 _OUT << std::endl;
5160 }
print_VkFenceCreateFlags(const VkFenceCreateFlags * obj,const std::string & str,bool commaNeeded=true)5161 static void print_VkFenceCreateFlags(const VkFenceCreateFlags *obj, const std::string &str, bool commaNeeded = true)
5162 {
5163 PRINT_SPACE
5164 if (str != "")
5165 _OUT << "\"" << str << "\""
5166 << " : ";
5167 const int max_bits = 64; // We don't expect the number to be larger.
5168 std::bitset<max_bits> b(obj);
5169 _OUT << "\"";
5170 if (obj == 0)
5171 _OUT << "0";
5172 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5173 {
5174 if (b[i] == 1)
5175 {
5176 bitCount++;
5177 if (bitCount < b.count())
5178 _OUT << VkFenceCreateFlagBits_map[1ULL << i] << " | ";
5179 else
5180 _OUT << VkFenceCreateFlagBits_map[1ULL << i];
5181 }
5182 }
5183 if (commaNeeded)
5184 _OUT << "\""
5185 << ",";
5186 else
5187 _OUT << "\""
5188 << "";
5189 _OUT << std::endl;
5190 }
5191
print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj,const std::string & str,bool commaNeeded=true)5192 static void print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj, const std::string &str, bool commaNeeded = true)
5193 {
5194 PRINT_SPACE
5195 if (commaNeeded)
5196 _OUT << "\"" << str << "\""
5197 << " : " << obj << "," << std::endl;
5198 else
5199 _OUT << "\"" << str << "\""
5200 << " : " << obj << std::endl;
5201 }
print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj,const std::string & str,bool commaNeeded=true)5202 static void print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags *obj, const std::string &str,
5203 bool commaNeeded = true)
5204 {
5205 PRINT_SPACE
5206 if (commaNeeded)
5207 _OUT << "\"" << str << "\""
5208 << " : " << obj << "," << std::endl;
5209 else
5210 _OUT << "\"" << str << "\""
5211 << " : " << obj << std::endl;
5212 }
5213
print_VkEventCreateFlags(VkEventCreateFlags obj,const std::string & str,bool commaNeeded=true)5214 static void print_VkEventCreateFlags(VkEventCreateFlags obj, const std::string &str, bool commaNeeded = true)
5215 {
5216 PRINT_SPACE
5217 if (str != "")
5218 _OUT << "\"" << str << "\""
5219 << " : ";
5220 const int max_bits = 64; // We don't expect the number to be larger.
5221 std::bitset<max_bits> b(obj);
5222 _OUT << "\"";
5223 if (obj == 0)
5224 _OUT << "0";
5225 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5226 {
5227 if (b[i] == 1)
5228 {
5229 bitCount++;
5230 if (bitCount < b.count())
5231 _OUT << VkEventCreateFlagBits_map[1ULL << i] << " | ";
5232 else
5233 _OUT << VkEventCreateFlagBits_map[1ULL << i];
5234 }
5235 }
5236 if (commaNeeded)
5237 _OUT << "\""
5238 << ",";
5239 else
5240 _OUT << "\""
5241 << "";
5242 _OUT << std::endl;
5243 }
print_VkEventCreateFlags(const VkEventCreateFlags * obj,const std::string & str,bool commaNeeded=true)5244 static void print_VkEventCreateFlags(const VkEventCreateFlags *obj, const std::string &str, bool commaNeeded = true)
5245 {
5246 PRINT_SPACE
5247 if (str != "")
5248 _OUT << "\"" << str << "\""
5249 << " : ";
5250 const int max_bits = 64; // We don't expect the number to be larger.
5251 std::bitset<max_bits> b(obj);
5252 _OUT << "\"";
5253 if (obj == 0)
5254 _OUT << "0";
5255 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5256 {
5257 if (b[i] == 1)
5258 {
5259 bitCount++;
5260 if (bitCount < b.count())
5261 _OUT << VkEventCreateFlagBits_map[1ULL << i] << " | ";
5262 else
5263 _OUT << VkEventCreateFlagBits_map[1ULL << i];
5264 }
5265 }
5266 if (commaNeeded)
5267 _OUT << "\""
5268 << ",";
5269 else
5270 _OUT << "\""
5271 << "";
5272 _OUT << std::endl;
5273 }
5274
print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj,const std::string & str,bool commaNeeded=true)5275 static void print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj, const std::string &str,
5276 bool commaNeeded = true)
5277 {
5278 PRINT_SPACE
5279 if (str != "")
5280 _OUT << "\"" << str << "\""
5281 << " : ";
5282 const int max_bits = 64; // We don't expect the number to be larger.
5283 std::bitset<max_bits> b(obj);
5284 _OUT << "\"";
5285 if (obj == 0)
5286 _OUT << "0";
5287 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5288 {
5289 if (b[i] == 1)
5290 {
5291 bitCount++;
5292 if (bitCount < b.count())
5293 _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL << i] << " | ";
5294 else
5295 _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL << i];
5296 }
5297 }
5298 if (commaNeeded)
5299 _OUT << "\""
5300 << ",";
5301 else
5302 _OUT << "\""
5303 << "";
5304 _OUT << std::endl;
5305 }
print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags * obj,const std::string & str,bool commaNeeded=true)5306 static void print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags *obj, const std::string &str,
5307 bool commaNeeded = true)
5308 {
5309 PRINT_SPACE
5310 if (str != "")
5311 _OUT << "\"" << str << "\""
5312 << " : ";
5313 const int max_bits = 64; // We don't expect the number to be larger.
5314 std::bitset<max_bits> b(obj);
5315 _OUT << "\"";
5316 if (obj == 0)
5317 _OUT << "0";
5318 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5319 {
5320 if (b[i] == 1)
5321 {
5322 bitCount++;
5323 if (bitCount < b.count())
5324 _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL << i] << " | ";
5325 else
5326 _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL << i];
5327 }
5328 }
5329 if (commaNeeded)
5330 _OUT << "\""
5331 << ",";
5332 else
5333 _OUT << "\""
5334 << "";
5335 _OUT << std::endl;
5336 }
5337
print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)5338 static void print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj, const std::string &str, bool commaNeeded = true)
5339 {
5340 PRINT_SPACE
5341 if (commaNeeded)
5342 _OUT << "\"" << str << "\""
5343 << " : " << obj << "," << std::endl;
5344 else
5345 _OUT << "\"" << str << "\""
5346 << " : " << obj << std::endl;
5347 }
print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)5348 static void print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags *obj, const std::string &str,
5349 bool commaNeeded = true)
5350 {
5351 PRINT_SPACE
5352 if (commaNeeded)
5353 _OUT << "\"" << str << "\""
5354 << " : " << obj << "," << std::endl;
5355 else
5356 _OUT << "\"" << str << "\""
5357 << " : " << obj << std::endl;
5358 }
5359
print_VkQueryResultFlags(VkQueryResultFlags obj,const std::string & str,bool commaNeeded=true)5360 static void print_VkQueryResultFlags(VkQueryResultFlags obj, const std::string &str, bool commaNeeded = true)
5361 {
5362 PRINT_SPACE
5363 if (str != "")
5364 _OUT << "\"" << str << "\""
5365 << " : ";
5366 const int max_bits = 64; // We don't expect the number to be larger.
5367 std::bitset<max_bits> b(obj);
5368 _OUT << "\"";
5369 if (obj == 0)
5370 _OUT << "0";
5371 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5372 {
5373 if (b[i] == 1)
5374 {
5375 bitCount++;
5376 if (bitCount < b.count())
5377 _OUT << VkQueryResultFlagBits_map[1ULL << i] << " | ";
5378 else
5379 _OUT << VkQueryResultFlagBits_map[1ULL << i];
5380 }
5381 }
5382 if (commaNeeded)
5383 _OUT << "\""
5384 << ",";
5385 else
5386 _OUT << "\""
5387 << "";
5388 _OUT << std::endl;
5389 }
print_VkQueryResultFlags(const VkQueryResultFlags * obj,const std::string & str,bool commaNeeded=true)5390 static void print_VkQueryResultFlags(const VkQueryResultFlags *obj, const std::string &str, bool commaNeeded = true)
5391 {
5392 PRINT_SPACE
5393 if (str != "")
5394 _OUT << "\"" << str << "\""
5395 << " : ";
5396 const int max_bits = 64; // We don't expect the number to be larger.
5397 std::bitset<max_bits> b(obj);
5398 _OUT << "\"";
5399 if (obj == 0)
5400 _OUT << "0";
5401 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5402 {
5403 if (b[i] == 1)
5404 {
5405 bitCount++;
5406 if (bitCount < b.count())
5407 _OUT << VkQueryResultFlagBits_map[1ULL << i] << " | ";
5408 else
5409 _OUT << VkQueryResultFlagBits_map[1ULL << i];
5410 }
5411 }
5412 if (commaNeeded)
5413 _OUT << "\""
5414 << ",";
5415 else
5416 _OUT << "\""
5417 << "";
5418 _OUT << std::endl;
5419 }
5420
print_VkBufferCreateFlags(VkBufferCreateFlags obj,const std::string & str,bool commaNeeded=true)5421 static void print_VkBufferCreateFlags(VkBufferCreateFlags obj, const std::string &str, bool commaNeeded = true)
5422 {
5423 PRINT_SPACE
5424 if (str != "")
5425 _OUT << "\"" << str << "\""
5426 << " : ";
5427 const int max_bits = 64; // We don't expect the number to be larger.
5428 std::bitset<max_bits> b(obj);
5429 _OUT << "\"";
5430 if (obj == 0)
5431 _OUT << "0";
5432 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5433 {
5434 if (b[i] == 1)
5435 {
5436 bitCount++;
5437 if (bitCount < b.count())
5438 _OUT << VkBufferCreateFlagBits_map[1ULL << i] << " | ";
5439 else
5440 _OUT << VkBufferCreateFlagBits_map[1ULL << i];
5441 }
5442 }
5443 if (commaNeeded)
5444 _OUT << "\""
5445 << ",";
5446 else
5447 _OUT << "\""
5448 << "";
5449 _OUT << std::endl;
5450 }
print_VkBufferCreateFlags(const VkBufferCreateFlags * obj,const std::string & str,bool commaNeeded=true)5451 static void print_VkBufferCreateFlags(const VkBufferCreateFlags *obj, const std::string &str, bool commaNeeded = true)
5452 {
5453 PRINT_SPACE
5454 if (str != "")
5455 _OUT << "\"" << str << "\""
5456 << " : ";
5457 const int max_bits = 64; // We don't expect the number to be larger.
5458 std::bitset<max_bits> b(obj);
5459 _OUT << "\"";
5460 if (obj == 0)
5461 _OUT << "0";
5462 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5463 {
5464 if (b[i] == 1)
5465 {
5466 bitCount++;
5467 if (bitCount < b.count())
5468 _OUT << VkBufferCreateFlagBits_map[1ULL << i] << " | ";
5469 else
5470 _OUT << VkBufferCreateFlagBits_map[1ULL << i];
5471 }
5472 }
5473 if (commaNeeded)
5474 _OUT << "\""
5475 << ",";
5476 else
5477 _OUT << "\""
5478 << "";
5479 _OUT << std::endl;
5480 }
5481
print_VkBufferUsageFlags(VkBufferUsageFlags obj,const std::string & str,bool commaNeeded=true)5482 static void print_VkBufferUsageFlags(VkBufferUsageFlags obj, const std::string &str, bool commaNeeded = true)
5483 {
5484 PRINT_SPACE
5485 if (str != "")
5486 _OUT << "\"" << str << "\""
5487 << " : ";
5488 const int max_bits = 64; // We don't expect the number to be larger.
5489 std::bitset<max_bits> b(obj);
5490 _OUT << "\"";
5491 if (obj == 0)
5492 _OUT << "0";
5493 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5494 {
5495 if (b[i] == 1)
5496 {
5497 bitCount++;
5498 if (bitCount < b.count())
5499 _OUT << VkBufferUsageFlagBits_map[1ULL << i] << " | ";
5500 else
5501 _OUT << VkBufferUsageFlagBits_map[1ULL << i];
5502 }
5503 }
5504 if (commaNeeded)
5505 _OUT << "\""
5506 << ",";
5507 else
5508 _OUT << "\""
5509 << "";
5510 _OUT << std::endl;
5511 }
print_VkBufferUsageFlags(const VkBufferUsageFlags * obj,const std::string & str,bool commaNeeded=true)5512 static void print_VkBufferUsageFlags(const VkBufferUsageFlags *obj, const std::string &str, bool commaNeeded = true)
5513 {
5514 PRINT_SPACE
5515 if (str != "")
5516 _OUT << "\"" << str << "\""
5517 << " : ";
5518 const int max_bits = 64; // We don't expect the number to be larger.
5519 std::bitset<max_bits> b(obj);
5520 _OUT << "\"";
5521 if (obj == 0)
5522 _OUT << "0";
5523 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5524 {
5525 if (b[i] == 1)
5526 {
5527 bitCount++;
5528 if (bitCount < b.count())
5529 _OUT << VkBufferUsageFlagBits_map[1ULL << i] << " | ";
5530 else
5531 _OUT << VkBufferUsageFlagBits_map[1ULL << i];
5532 }
5533 }
5534 if (commaNeeded)
5535 _OUT << "\""
5536 << ",";
5537 else
5538 _OUT << "\""
5539 << "";
5540 _OUT << std::endl;
5541 }
5542
print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj,const std::string & str,bool commaNeeded=true)5543 static void print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj, const std::string &str, bool commaNeeded = true)
5544 {
5545 PRINT_SPACE
5546 if (commaNeeded)
5547 _OUT << "\"" << str << "\""
5548 << " : " << obj << "," << std::endl;
5549 else
5550 _OUT << "\"" << str << "\""
5551 << " : " << obj << std::endl;
5552 }
print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj,const std::string & str,bool commaNeeded=true)5553 static void print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags *obj, const std::string &str,
5554 bool commaNeeded = true)
5555 {
5556 PRINT_SPACE
5557 if (commaNeeded)
5558 _OUT << "\"" << str << "\""
5559 << " : " << obj << "," << std::endl;
5560 else
5561 _OUT << "\"" << str << "\""
5562 << " : " << obj << std::endl;
5563 }
5564
print_VkImageViewCreateFlags(VkImageViewCreateFlags obj,const std::string & str,bool commaNeeded=true)5565 static void print_VkImageViewCreateFlags(VkImageViewCreateFlags obj, const std::string &str, bool commaNeeded = true)
5566 {
5567 PRINT_SPACE
5568 if (str != "")
5569 _OUT << "\"" << str << "\""
5570 << " : ";
5571 const int max_bits = 64; // We don't expect the number to be larger.
5572 std::bitset<max_bits> b(obj);
5573 _OUT << "\"";
5574 if (obj == 0)
5575 _OUT << "0";
5576 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5577 {
5578 if (b[i] == 1)
5579 {
5580 bitCount++;
5581 if (bitCount < b.count())
5582 _OUT << VkImageViewCreateFlagBits_map[1ULL << i] << " | ";
5583 else
5584 _OUT << VkImageViewCreateFlagBits_map[1ULL << i];
5585 }
5586 }
5587 if (commaNeeded)
5588 _OUT << "\""
5589 << ",";
5590 else
5591 _OUT << "\""
5592 << "";
5593 _OUT << std::endl;
5594 }
print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj,const std::string & str,bool commaNeeded=true)5595 static void print_VkImageViewCreateFlags(const VkImageViewCreateFlags *obj, const std::string &str,
5596 bool commaNeeded = true)
5597 {
5598 PRINT_SPACE
5599 if (str != "")
5600 _OUT << "\"" << str << "\""
5601 << " : ";
5602 const int max_bits = 64; // We don't expect the number to be larger.
5603 std::bitset<max_bits> b(obj);
5604 _OUT << "\"";
5605 if (obj == 0)
5606 _OUT << "0";
5607 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5608 {
5609 if (b[i] == 1)
5610 {
5611 bitCount++;
5612 if (bitCount < b.count())
5613 _OUT << VkImageViewCreateFlagBits_map[1ULL << i] << " | ";
5614 else
5615 _OUT << VkImageViewCreateFlagBits_map[1ULL << i];
5616 }
5617 }
5618 if (commaNeeded)
5619 _OUT << "\""
5620 << ",";
5621 else
5622 _OUT << "\""
5623 << "";
5624 _OUT << std::endl;
5625 }
5626
print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj,const std::string & str,bool commaNeeded=true)5627 static void print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj, const std::string &str,
5628 bool commaNeeded = true)
5629 {
5630 PRINT_SPACE
5631 if (str != "")
5632 _OUT << "\"" << str << "\""
5633 << " : ";
5634 const int max_bits = 64; // We don't expect the number to be larger.
5635 std::bitset<max_bits> b(obj);
5636 _OUT << "\"";
5637 if (obj == 0)
5638 _OUT << "0";
5639 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5640 {
5641 if (b[i] == 1)
5642 {
5643 bitCount++;
5644 if (bitCount < b.count())
5645 _OUT << VkPipelineCacheCreateFlagBits_map[1ULL << i] << " | ";
5646 else
5647 _OUT << VkPipelineCacheCreateFlagBits_map[1ULL << i];
5648 }
5649 }
5650 if (commaNeeded)
5651 _OUT << "\""
5652 << ",";
5653 else
5654 _OUT << "\""
5655 << "";
5656 _OUT << std::endl;
5657 }
print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags * obj,const std::string & str,bool commaNeeded=true)5658 static void print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags *obj, const std::string &str,
5659 bool commaNeeded = true)
5660 {
5661 PRINT_SPACE
5662 if (str != "")
5663 _OUT << "\"" << str << "\""
5664 << " : ";
5665 const int max_bits = 64; // We don't expect the number to be larger.
5666 std::bitset<max_bits> b(obj);
5667 _OUT << "\"";
5668 if (obj == 0)
5669 _OUT << "0";
5670 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5671 {
5672 if (b[i] == 1)
5673 {
5674 bitCount++;
5675 if (bitCount < b.count())
5676 _OUT << VkPipelineCacheCreateFlagBits_map[1ULL << i] << " | ";
5677 else
5678 _OUT << VkPipelineCacheCreateFlagBits_map[1ULL << i];
5679 }
5680 }
5681 if (commaNeeded)
5682 _OUT << "\""
5683 << ",";
5684 else
5685 _OUT << "\""
5686 << "";
5687 _OUT << std::endl;
5688 }
5689
print_VkColorComponentFlags(VkColorComponentFlags obj,const std::string & str,bool commaNeeded=true)5690 static void print_VkColorComponentFlags(VkColorComponentFlags obj, const std::string &str, bool commaNeeded = true)
5691 {
5692 PRINT_SPACE
5693 if (str != "")
5694 _OUT << "\"" << str << "\""
5695 << " : ";
5696 const int max_bits = 64; // We don't expect the number to be larger.
5697 std::bitset<max_bits> b(obj);
5698 _OUT << "\"";
5699 if (obj == 0)
5700 _OUT << "0";
5701 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5702 {
5703 if (b[i] == 1)
5704 {
5705 bitCount++;
5706 if (bitCount < b.count())
5707 _OUT << VkColorComponentFlagBits_map[1ULL << i] << " | ";
5708 else
5709 _OUT << VkColorComponentFlagBits_map[1ULL << i];
5710 }
5711 }
5712 if (commaNeeded)
5713 _OUT << "\""
5714 << ",";
5715 else
5716 _OUT << "\""
5717 << "";
5718 _OUT << std::endl;
5719 }
print_VkColorComponentFlags(const VkColorComponentFlags * obj,const std::string & str,bool commaNeeded=true)5720 static void print_VkColorComponentFlags(const VkColorComponentFlags *obj, const std::string &str,
5721 bool commaNeeded = true)
5722 {
5723 PRINT_SPACE
5724 if (str != "")
5725 _OUT << "\"" << str << "\""
5726 << " : ";
5727 const int max_bits = 64; // We don't expect the number to be larger.
5728 std::bitset<max_bits> b(obj);
5729 _OUT << "\"";
5730 if (obj == 0)
5731 _OUT << "0";
5732 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5733 {
5734 if (b[i] == 1)
5735 {
5736 bitCount++;
5737 if (bitCount < b.count())
5738 _OUT << VkColorComponentFlagBits_map[1ULL << i] << " | ";
5739 else
5740 _OUT << VkColorComponentFlagBits_map[1ULL << i];
5741 }
5742 }
5743 if (commaNeeded)
5744 _OUT << "\""
5745 << ",";
5746 else
5747 _OUT << "\""
5748 << "";
5749 _OUT << std::endl;
5750 }
5751
print_VkPipelineCreateFlags(VkPipelineCreateFlags obj,const std::string & str,bool commaNeeded=true)5752 static void print_VkPipelineCreateFlags(VkPipelineCreateFlags obj, const std::string &str, bool commaNeeded = true)
5753 {
5754 PRINT_SPACE
5755 if (str != "")
5756 _OUT << "\"" << str << "\""
5757 << " : ";
5758 const int max_bits = 64; // We don't expect the number to be larger.
5759 std::bitset<max_bits> b(obj);
5760 _OUT << "\"";
5761 if (obj == 0)
5762 _OUT << "0";
5763 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5764 {
5765 if (b[i] == 1)
5766 {
5767 bitCount++;
5768 if (bitCount < b.count())
5769 _OUT << VkPipelineCreateFlagBits_map[1ULL << i] << " | ";
5770 else
5771 _OUT << VkPipelineCreateFlagBits_map[1ULL << i];
5772 }
5773 }
5774 if (commaNeeded)
5775 _OUT << "\""
5776 << ",";
5777 else
5778 _OUT << "\""
5779 << "";
5780 _OUT << std::endl;
5781 }
print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj,const std::string & str,bool commaNeeded=true)5782 static void print_VkPipelineCreateFlags(const VkPipelineCreateFlags *obj, const std::string &str,
5783 bool commaNeeded = true)
5784 {
5785 PRINT_SPACE
5786 if (str != "")
5787 _OUT << "\"" << str << "\""
5788 << " : ";
5789 const int max_bits = 64; // We don't expect the number to be larger.
5790 std::bitset<max_bits> b(obj);
5791 _OUT << "\"";
5792 if (obj == 0)
5793 _OUT << "0";
5794 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5795 {
5796 if (b[i] == 1)
5797 {
5798 bitCount++;
5799 if (bitCount < b.count())
5800 _OUT << VkPipelineCreateFlagBits_map[1ULL << i] << " | ";
5801 else
5802 _OUT << VkPipelineCreateFlagBits_map[1ULL << i];
5803 }
5804 }
5805 if (commaNeeded)
5806 _OUT << "\""
5807 << ",";
5808 else
5809 _OUT << "\""
5810 << "";
5811 _OUT << std::endl;
5812 }
5813
print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj,const std::string & str,bool commaNeeded=true)5814 static void print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj, const std::string &str,
5815 bool commaNeeded = true)
5816 {
5817 PRINT_SPACE
5818 if (str != "")
5819 _OUT << "\"" << str << "\""
5820 << " : ";
5821 const int max_bits = 64; // We don't expect the number to be larger.
5822 std::bitset<max_bits> b(obj);
5823 _OUT << "\"";
5824 if (obj == 0)
5825 _OUT << "0";
5826 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5827 {
5828 if (b[i] == 1)
5829 {
5830 bitCount++;
5831 if (bitCount < b.count())
5832 _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL << i] << " | ";
5833 else
5834 _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL << i];
5835 }
5836 }
5837 if (commaNeeded)
5838 _OUT << "\""
5839 << ",";
5840 else
5841 _OUT << "\""
5842 << "";
5843 _OUT << std::endl;
5844 }
print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags * obj,const std::string & str,bool commaNeeded=true)5845 static void print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags *obj, const std::string &str,
5846 bool commaNeeded = true)
5847 {
5848 PRINT_SPACE
5849 if (str != "")
5850 _OUT << "\"" << str << "\""
5851 << " : ";
5852 const int max_bits = 64; // We don't expect the number to be larger.
5853 std::bitset<max_bits> b(obj);
5854 _OUT << "\"";
5855 if (obj == 0)
5856 _OUT << "0";
5857 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5858 {
5859 if (b[i] == 1)
5860 {
5861 bitCount++;
5862 if (bitCount < b.count())
5863 _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL << i] << " | ";
5864 else
5865 _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL << i];
5866 }
5867 }
5868 if (commaNeeded)
5869 _OUT << "\""
5870 << ",";
5871 else
5872 _OUT << "\""
5873 << "";
5874 _OUT << std::endl;
5875 }
5876
print_VkCullModeFlags(VkCullModeFlags obj,const std::string & str,bool commaNeeded=true)5877 static void print_VkCullModeFlags(VkCullModeFlags obj, const std::string &str, bool commaNeeded = true)
5878 {
5879 PRINT_SPACE
5880 if (str != "")
5881 _OUT << "\"" << str << "\""
5882 << " : ";
5883 const int max_bits = 64; // We don't expect the number to be larger.
5884 std::bitset<max_bits> b(obj);
5885 _OUT << "\"";
5886 if (obj == 0)
5887 _OUT << "0";
5888 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5889 {
5890 if (b[i] == 1)
5891 {
5892 bitCount++;
5893 if (bitCount < b.count())
5894 _OUT << VkCullModeFlagBits_map[1ULL << i] << " | ";
5895 else
5896 _OUT << VkCullModeFlagBits_map[1ULL << i];
5897 }
5898 }
5899 if (commaNeeded)
5900 _OUT << "\""
5901 << ",";
5902 else
5903 _OUT << "\""
5904 << "";
5905 _OUT << std::endl;
5906 }
print_VkCullModeFlags(const VkCullModeFlags * obj,const std::string & str,bool commaNeeded=true)5907 static void print_VkCullModeFlags(const VkCullModeFlags *obj, const std::string &str, bool commaNeeded = true)
5908 {
5909 PRINT_SPACE
5910 if (str != "")
5911 _OUT << "\"" << str << "\""
5912 << " : ";
5913 const int max_bits = 64; // We don't expect the number to be larger.
5914 std::bitset<max_bits> b(obj);
5915 _OUT << "\"";
5916 if (obj == 0)
5917 _OUT << "0";
5918 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
5919 {
5920 if (b[i] == 1)
5921 {
5922 bitCount++;
5923 if (bitCount < b.count())
5924 _OUT << VkCullModeFlagBits_map[1ULL << i] << " | ";
5925 else
5926 _OUT << VkCullModeFlagBits_map[1ULL << i];
5927 }
5928 }
5929 if (commaNeeded)
5930 _OUT << "\""
5931 << ",";
5932 else
5933 _OUT << "\""
5934 << "";
5935 _OUT << std::endl;
5936 }
5937
print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj,const std::string & str,bool commaNeeded=true)5938 static void print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj,
5939 const std::string &str, bool commaNeeded = true)
5940 {
5941 PRINT_SPACE
5942 if (commaNeeded)
5943 _OUT << "\"" << str << "\""
5944 << " : " << obj << "," << std::endl;
5945 else
5946 _OUT << "\"" << str << "\""
5947 << " : " << obj << std::endl;
5948 }
print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)5949 static void print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags *obj,
5950 const std::string &str, bool commaNeeded = true)
5951 {
5952 PRINT_SPACE
5953 if (commaNeeded)
5954 _OUT << "\"" << str << "\""
5955 << " : " << obj << "," << std::endl;
5956 else
5957 _OUT << "\"" << str << "\""
5958 << " : " << obj << std::endl;
5959 }
5960
print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj,const std::string & str,bool commaNeeded=true)5961 static void print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj,
5962 const std::string &str, bool commaNeeded = true)
5963 {
5964 PRINT_SPACE
5965 if (commaNeeded)
5966 _OUT << "\"" << str << "\""
5967 << " : " << obj << "," << std::endl;
5968 else
5969 _OUT << "\"" << str << "\""
5970 << " : " << obj << std::endl;
5971 }
print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)5972 static void print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags *obj,
5973 const std::string &str, bool commaNeeded = true)
5974 {
5975 PRINT_SPACE
5976 if (commaNeeded)
5977 _OUT << "\"" << str << "\""
5978 << " : " << obj << "," << std::endl;
5979 else
5980 _OUT << "\"" << str << "\""
5981 << " : " << obj << std::endl;
5982 }
5983
print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj,const std::string & str,bool commaNeeded=true)5984 static void print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj,
5985 const std::string &str, bool commaNeeded = true)
5986 {
5987 PRINT_SPACE
5988 if (commaNeeded)
5989 _OUT << "\"" << str << "\""
5990 << " : " << obj << "," << std::endl;
5991 else
5992 _OUT << "\"" << str << "\""
5993 << " : " << obj << std::endl;
5994 }
print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)5995 static void print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags *obj,
5996 const std::string &str, bool commaNeeded = true)
5997 {
5998 PRINT_SPACE
5999 if (commaNeeded)
6000 _OUT << "\"" << str << "\""
6001 << " : " << obj << "," << std::endl;
6002 else
6003 _OUT << "\"" << str << "\""
6004 << " : " << obj << std::endl;
6005 }
6006
print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj,const std::string & str,bool commaNeeded=true)6007 static void print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj, const std::string &str,
6008 bool commaNeeded = true)
6009 {
6010 PRINT_SPACE
6011 if (commaNeeded)
6012 _OUT << "\"" << str << "\""
6013 << " : " << obj << "," << std::endl;
6014 else
6015 _OUT << "\"" << str << "\""
6016 << " : " << obj << std::endl;
6017 }
print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)6018 static void print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags *obj,
6019 const std::string &str, bool commaNeeded = true)
6020 {
6021 PRINT_SPACE
6022 if (commaNeeded)
6023 _OUT << "\"" << str << "\""
6024 << " : " << obj << "," << std::endl;
6025 else
6026 _OUT << "\"" << str << "\""
6027 << " : " << obj << std::endl;
6028 }
6029
print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj,const std::string & str,bool commaNeeded=true)6030 static void print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj,
6031 const std::string &str, bool commaNeeded = true)
6032 {
6033 PRINT_SPACE
6034 if (commaNeeded)
6035 _OUT << "\"" << str << "\""
6036 << " : " << obj << "," << std::endl;
6037 else
6038 _OUT << "\"" << str << "\""
6039 << " : " << obj << std::endl;
6040 }
print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)6041 static void print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags *obj,
6042 const std::string &str, bool commaNeeded = true)
6043 {
6044 PRINT_SPACE
6045 if (commaNeeded)
6046 _OUT << "\"" << str << "\""
6047 << " : " << obj << "," << std::endl;
6048 else
6049 _OUT << "\"" << str << "\""
6050 << " : " << obj << std::endl;
6051 }
6052
print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj,const std::string & str,bool commaNeeded=true)6053 static void print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj,
6054 const std::string &str, bool commaNeeded = true)
6055 {
6056 PRINT_SPACE
6057 if (commaNeeded)
6058 _OUT << "\"" << str << "\""
6059 << " : " << obj << "," << std::endl;
6060 else
6061 _OUT << "\"" << str << "\""
6062 << " : " << obj << std::endl;
6063 }
print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)6064 static void print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags *obj,
6065 const std::string &str, bool commaNeeded = true)
6066 {
6067 PRINT_SPACE
6068 if (commaNeeded)
6069 _OUT << "\"" << str << "\""
6070 << " : " << obj << "," << std::endl;
6071 else
6072 _OUT << "\"" << str << "\""
6073 << " : " << obj << std::endl;
6074 }
6075
print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj,const std::string & str,bool commaNeeded=true)6076 static void print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj,
6077 const std::string &str, bool commaNeeded = true)
6078 {
6079 PRINT_SPACE
6080 if (commaNeeded)
6081 _OUT << "\"" << str << "\""
6082 << " : " << obj << "," << std::endl;
6083 else
6084 _OUT << "\"" << str << "\""
6085 << " : " << obj << std::endl;
6086 }
print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)6087 static void print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags *obj,
6088 const std::string &str, bool commaNeeded = true)
6089 {
6090 PRINT_SPACE
6091 if (commaNeeded)
6092 _OUT << "\"" << str << "\""
6093 << " : " << obj << "," << std::endl;
6094 else
6095 _OUT << "\"" << str << "\""
6096 << " : " << obj << std::endl;
6097 }
6098
print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj,const std::string & str,bool commaNeeded=true)6099 static void print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj, const std::string &str,
6100 bool commaNeeded = true)
6101 {
6102 PRINT_SPACE
6103 if (commaNeeded)
6104 _OUT << "\"" << str << "\""
6105 << " : " << obj << "," << std::endl;
6106 else
6107 _OUT << "\"" << str << "\""
6108 << " : " << obj << std::endl;
6109 }
print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)6110 static void print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags *obj,
6111 const std::string &str, bool commaNeeded = true)
6112 {
6113 PRINT_SPACE
6114 if (commaNeeded)
6115 _OUT << "\"" << str << "\""
6116 << " : " << obj << "," << std::endl;
6117 else
6118 _OUT << "\"" << str << "\""
6119 << " : " << obj << std::endl;
6120 }
6121
print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj,const std::string & str,bool commaNeeded=true)6122 static void print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj, const std::string &str,
6123 bool commaNeeded = true)
6124 {
6125 PRINT_SPACE
6126 if (commaNeeded)
6127 _OUT << "\"" << str << "\""
6128 << " : " << obj << "," << std::endl;
6129 else
6130 _OUT << "\"" << str << "\""
6131 << " : " << obj << std::endl;
6132 }
print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)6133 static void print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags *obj,
6134 const std::string &str, bool commaNeeded = true)
6135 {
6136 PRINT_SPACE
6137 if (commaNeeded)
6138 _OUT << "\"" << str << "\""
6139 << " : " << obj << "," << std::endl;
6140 else
6141 _OUT << "\"" << str << "\""
6142 << " : " << obj << std::endl;
6143 }
6144
print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj,const std::string & str,bool commaNeeded=true)6145 static void print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj, const std::string &str,
6146 bool commaNeeded = true)
6147 {
6148 PRINT_SPACE
6149 if (commaNeeded)
6150 _OUT << "\"" << str << "\""
6151 << " : " << obj << "," << std::endl;
6152 else
6153 _OUT << "\"" << str << "\""
6154 << " : " << obj << std::endl;
6155 }
print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags * obj,const std::string & str,bool commaNeeded=true)6156 static void print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags *obj, const std::string &str,
6157 bool commaNeeded = true)
6158 {
6159 PRINT_SPACE
6160 if (commaNeeded)
6161 _OUT << "\"" << str << "\""
6162 << " : " << obj << "," << std::endl;
6163 else
6164 _OUT << "\"" << str << "\""
6165 << " : " << obj << std::endl;
6166 }
6167
print_VkShaderStageFlags(VkShaderStageFlags obj,const std::string & str,bool commaNeeded=true)6168 static void print_VkShaderStageFlags(VkShaderStageFlags obj, const std::string &str, bool commaNeeded = true)
6169 {
6170 PRINT_SPACE
6171 if (str != "")
6172 _OUT << "\"" << str << "\""
6173 << " : ";
6174 const int max_bits = 64; // We don't expect the number to be larger.
6175 std::bitset<max_bits> b(obj);
6176 _OUT << "\"";
6177 if (obj == 0)
6178 _OUT << "0";
6179 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6180 {
6181 if (b[i] == 1)
6182 {
6183 bitCount++;
6184 if (bitCount < b.count())
6185 _OUT << VkShaderStageFlagBits_map[1ULL << i] << " | ";
6186 else
6187 _OUT << VkShaderStageFlagBits_map[1ULL << i];
6188 }
6189 }
6190 if (commaNeeded)
6191 _OUT << "\""
6192 << ",";
6193 else
6194 _OUT << "\""
6195 << "";
6196 _OUT << std::endl;
6197 }
print_VkShaderStageFlags(const VkShaderStageFlags * obj,const std::string & str,bool commaNeeded=true)6198 static void print_VkShaderStageFlags(const VkShaderStageFlags *obj, const std::string &str, bool commaNeeded = true)
6199 {
6200 PRINT_SPACE
6201 if (str != "")
6202 _OUT << "\"" << str << "\""
6203 << " : ";
6204 const int max_bits = 64; // We don't expect the number to be larger.
6205 std::bitset<max_bits> b(obj);
6206 _OUT << "\"";
6207 if (obj == 0)
6208 _OUT << "0";
6209 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6210 {
6211 if (b[i] == 1)
6212 {
6213 bitCount++;
6214 if (bitCount < b.count())
6215 _OUT << VkShaderStageFlagBits_map[1ULL << i] << " | ";
6216 else
6217 _OUT << VkShaderStageFlagBits_map[1ULL << i];
6218 }
6219 }
6220 if (commaNeeded)
6221 _OUT << "\""
6222 << ",";
6223 else
6224 _OUT << "\""
6225 << "";
6226 _OUT << std::endl;
6227 }
6228
print_VkSamplerCreateFlags(VkSamplerCreateFlags obj,const std::string & str,bool commaNeeded=true)6229 static void print_VkSamplerCreateFlags(VkSamplerCreateFlags obj, const std::string &str, bool commaNeeded = true)
6230 {
6231 PRINT_SPACE
6232 if (str != "")
6233 _OUT << "\"" << str << "\""
6234 << " : ";
6235 const int max_bits = 64; // We don't expect the number to be larger.
6236 std::bitset<max_bits> b(obj);
6237 _OUT << "\"";
6238 if (obj == 0)
6239 _OUT << "0";
6240 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6241 {
6242 if (b[i] == 1)
6243 {
6244 bitCount++;
6245 if (bitCount < b.count())
6246 _OUT << VkSamplerCreateFlagBits_map[1ULL << i] << " | ";
6247 else
6248 _OUT << VkSamplerCreateFlagBits_map[1ULL << i];
6249 }
6250 }
6251 if (commaNeeded)
6252 _OUT << "\""
6253 << ",";
6254 else
6255 _OUT << "\""
6256 << "";
6257 _OUT << std::endl;
6258 }
print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj,const std::string & str,bool commaNeeded=true)6259 static void print_VkSamplerCreateFlags(const VkSamplerCreateFlags *obj, const std::string &str, bool commaNeeded = true)
6260 {
6261 PRINT_SPACE
6262 if (str != "")
6263 _OUT << "\"" << str << "\""
6264 << " : ";
6265 const int max_bits = 64; // We don't expect the number to be larger.
6266 std::bitset<max_bits> b(obj);
6267 _OUT << "\"";
6268 if (obj == 0)
6269 _OUT << "0";
6270 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6271 {
6272 if (b[i] == 1)
6273 {
6274 bitCount++;
6275 if (bitCount < b.count())
6276 _OUT << VkSamplerCreateFlagBits_map[1ULL << i] << " | ";
6277 else
6278 _OUT << VkSamplerCreateFlagBits_map[1ULL << i];
6279 }
6280 }
6281 if (commaNeeded)
6282 _OUT << "\""
6283 << ",";
6284 else
6285 _OUT << "\""
6286 << "";
6287 _OUT << std::endl;
6288 }
6289
print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)6290 static void print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj, const std::string &str,
6291 bool commaNeeded = true)
6292 {
6293 PRINT_SPACE
6294 if (str != "")
6295 _OUT << "\"" << str << "\""
6296 << " : ";
6297 const int max_bits = 64; // We don't expect the number to be larger.
6298 std::bitset<max_bits> b(obj);
6299 _OUT << "\"";
6300 if (obj == 0)
6301 _OUT << "0";
6302 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6303 {
6304 if (b[i] == 1)
6305 {
6306 bitCount++;
6307 if (bitCount < b.count())
6308 _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL << i] << " | ";
6309 else
6310 _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL << i];
6311 }
6312 }
6313 if (commaNeeded)
6314 _OUT << "\""
6315 << ",";
6316 else
6317 _OUT << "\""
6318 << "";
6319 _OUT << std::endl;
6320 }
print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)6321 static void print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags *obj, const std::string &str,
6322 bool commaNeeded = true)
6323 {
6324 PRINT_SPACE
6325 if (str != "")
6326 _OUT << "\"" << str << "\""
6327 << " : ";
6328 const int max_bits = 64; // We don't expect the number to be larger.
6329 std::bitset<max_bits> b(obj);
6330 _OUT << "\"";
6331 if (obj == 0)
6332 _OUT << "0";
6333 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6334 {
6335 if (b[i] == 1)
6336 {
6337 bitCount++;
6338 if (bitCount < b.count())
6339 _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL << i] << " | ";
6340 else
6341 _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL << i];
6342 }
6343 }
6344 if (commaNeeded)
6345 _OUT << "\""
6346 << ",";
6347 else
6348 _OUT << "\""
6349 << "";
6350 _OUT << std::endl;
6351 }
6352
print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj,const std::string & str,bool commaNeeded=true)6353 static void print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj, const std::string &str,
6354 bool commaNeeded = true)
6355 {
6356 PRINT_SPACE
6357 if (commaNeeded)
6358 _OUT << "\"" << str << "\""
6359 << " : " << obj << "," << std::endl;
6360 else
6361 _OUT << "\"" << str << "\""
6362 << " : " << obj << std::endl;
6363 }
print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags * obj,const std::string & str,bool commaNeeded=true)6364 static void print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags *obj, const std::string &str,
6365 bool commaNeeded = true)
6366 {
6367 PRINT_SPACE
6368 if (commaNeeded)
6369 _OUT << "\"" << str << "\""
6370 << " : " << obj << "," << std::endl;
6371 else
6372 _OUT << "\"" << str << "\""
6373 << " : " << obj << std::endl;
6374 }
6375
print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj,const std::string & str,bool commaNeeded=true)6376 static void print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj, const std::string &str,
6377 bool commaNeeded = true)
6378 {
6379 PRINT_SPACE
6380 if (str != "")
6381 _OUT << "\"" << str << "\""
6382 << " : ";
6383 const int max_bits = 64; // We don't expect the number to be larger.
6384 std::bitset<max_bits> b(obj);
6385 _OUT << "\"";
6386 if (obj == 0)
6387 _OUT << "0";
6388 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6389 {
6390 if (b[i] == 1)
6391 {
6392 bitCount++;
6393 if (bitCount < b.count())
6394 _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL << i] << " | ";
6395 else
6396 _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL << i];
6397 }
6398 }
6399 if (commaNeeded)
6400 _OUT << "\""
6401 << ",";
6402 else
6403 _OUT << "\""
6404 << "";
6405 _OUT << std::endl;
6406 }
print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags * obj,const std::string & str,bool commaNeeded=true)6407 static void print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags *obj, const std::string &str,
6408 bool commaNeeded = true)
6409 {
6410 PRINT_SPACE
6411 if (str != "")
6412 _OUT << "\"" << str << "\""
6413 << " : ";
6414 const int max_bits = 64; // We don't expect the number to be larger.
6415 std::bitset<max_bits> b(obj);
6416 _OUT << "\"";
6417 if (obj == 0)
6418 _OUT << "0";
6419 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6420 {
6421 if (b[i] == 1)
6422 {
6423 bitCount++;
6424 if (bitCount < b.count())
6425 _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL << i] << " | ";
6426 else
6427 _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL << i];
6428 }
6429 }
6430 if (commaNeeded)
6431 _OUT << "\""
6432 << ",";
6433 else
6434 _OUT << "\""
6435 << "";
6436 _OUT << std::endl;
6437 }
6438
print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj,const std::string & str,bool commaNeeded=true)6439 static void print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj, const std::string &str,
6440 bool commaNeeded = true)
6441 {
6442 PRINT_SPACE
6443 if (str != "")
6444 _OUT << "\"" << str << "\""
6445 << " : ";
6446 const int max_bits = 64; // We don't expect the number to be larger.
6447 std::bitset<max_bits> b(obj);
6448 _OUT << "\"";
6449 if (obj == 0)
6450 _OUT << "0";
6451 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6452 {
6453 if (b[i] == 1)
6454 {
6455 bitCount++;
6456 if (bitCount < b.count())
6457 _OUT << VkAttachmentDescriptionFlagBits_map[1ULL << i] << " | ";
6458 else
6459 _OUT << VkAttachmentDescriptionFlagBits_map[1ULL << i];
6460 }
6461 }
6462 if (commaNeeded)
6463 _OUT << "\""
6464 << ",";
6465 else
6466 _OUT << "\""
6467 << "";
6468 _OUT << std::endl;
6469 }
print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags * obj,const std::string & str,bool commaNeeded=true)6470 static void print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags *obj, const std::string &str,
6471 bool commaNeeded = true)
6472 {
6473 PRINT_SPACE
6474 if (str != "")
6475 _OUT << "\"" << str << "\""
6476 << " : ";
6477 const int max_bits = 64; // We don't expect the number to be larger.
6478 std::bitset<max_bits> b(obj);
6479 _OUT << "\"";
6480 if (obj == 0)
6481 _OUT << "0";
6482 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6483 {
6484 if (b[i] == 1)
6485 {
6486 bitCount++;
6487 if (bitCount < b.count())
6488 _OUT << VkAttachmentDescriptionFlagBits_map[1ULL << i] << " | ";
6489 else
6490 _OUT << VkAttachmentDescriptionFlagBits_map[1ULL << i];
6491 }
6492 }
6493 if (commaNeeded)
6494 _OUT << "\""
6495 << ",";
6496 else
6497 _OUT << "\""
6498 << "";
6499 _OUT << std::endl;
6500 }
6501
print_VkDependencyFlags(VkDependencyFlags obj,const std::string & str,bool commaNeeded=true)6502 static void print_VkDependencyFlags(VkDependencyFlags obj, const std::string &str, bool commaNeeded = true)
6503 {
6504 PRINT_SPACE
6505 if (str != "")
6506 _OUT << "\"" << str << "\""
6507 << " : ";
6508 const int max_bits = 64; // We don't expect the number to be larger.
6509 std::bitset<max_bits> b(obj);
6510 _OUT << "\"";
6511 if (obj == 0)
6512 _OUT << "0";
6513 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6514 {
6515 if (b[i] == 1)
6516 {
6517 bitCount++;
6518 if (bitCount < b.count())
6519 _OUT << VkDependencyFlagBits_map[1ULL << i] << " | ";
6520 else
6521 _OUT << VkDependencyFlagBits_map[1ULL << i];
6522 }
6523 }
6524 if (commaNeeded)
6525 _OUT << "\""
6526 << ",";
6527 else
6528 _OUT << "\""
6529 << "";
6530 _OUT << std::endl;
6531 }
print_VkDependencyFlags(const VkDependencyFlags * obj,const std::string & str,bool commaNeeded=true)6532 static void print_VkDependencyFlags(const VkDependencyFlags *obj, const std::string &str, bool commaNeeded = true)
6533 {
6534 PRINT_SPACE
6535 if (str != "")
6536 _OUT << "\"" << str << "\""
6537 << " : ";
6538 const int max_bits = 64; // We don't expect the number to be larger.
6539 std::bitset<max_bits> b(obj);
6540 _OUT << "\"";
6541 if (obj == 0)
6542 _OUT << "0";
6543 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6544 {
6545 if (b[i] == 1)
6546 {
6547 bitCount++;
6548 if (bitCount < b.count())
6549 _OUT << VkDependencyFlagBits_map[1ULL << i] << " | ";
6550 else
6551 _OUT << VkDependencyFlagBits_map[1ULL << i];
6552 }
6553 }
6554 if (commaNeeded)
6555 _OUT << "\""
6556 << ",";
6557 else
6558 _OUT << "\""
6559 << "";
6560 _OUT << std::endl;
6561 }
6562
print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj,const std::string & str,bool commaNeeded=true)6563 static void print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj, const std::string &str,
6564 bool commaNeeded = true)
6565 {
6566 PRINT_SPACE
6567 if (str != "")
6568 _OUT << "\"" << str << "\""
6569 << " : ";
6570 const int max_bits = 64; // We don't expect the number to be larger.
6571 std::bitset<max_bits> b(obj);
6572 _OUT << "\"";
6573 if (obj == 0)
6574 _OUT << "0";
6575 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6576 {
6577 if (b[i] == 1)
6578 {
6579 bitCount++;
6580 if (bitCount < b.count())
6581 _OUT << VkFramebufferCreateFlagBits_map[1ULL << i] << " | ";
6582 else
6583 _OUT << VkFramebufferCreateFlagBits_map[1ULL << i];
6584 }
6585 }
6586 if (commaNeeded)
6587 _OUT << "\""
6588 << ",";
6589 else
6590 _OUT << "\""
6591 << "";
6592 _OUT << std::endl;
6593 }
print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj,const std::string & str,bool commaNeeded=true)6594 static void print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags *obj, const std::string &str,
6595 bool commaNeeded = true)
6596 {
6597 PRINT_SPACE
6598 if (str != "")
6599 _OUT << "\"" << str << "\""
6600 << " : ";
6601 const int max_bits = 64; // We don't expect the number to be larger.
6602 std::bitset<max_bits> b(obj);
6603 _OUT << "\"";
6604 if (obj == 0)
6605 _OUT << "0";
6606 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6607 {
6608 if (b[i] == 1)
6609 {
6610 bitCount++;
6611 if (bitCount < b.count())
6612 _OUT << VkFramebufferCreateFlagBits_map[1ULL << i] << " | ";
6613 else
6614 _OUT << VkFramebufferCreateFlagBits_map[1ULL << i];
6615 }
6616 }
6617 if (commaNeeded)
6618 _OUT << "\""
6619 << ",";
6620 else
6621 _OUT << "\""
6622 << "";
6623 _OUT << std::endl;
6624 }
6625
print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj,const std::string & str,bool commaNeeded=true)6626 static void print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj, const std::string &str, bool commaNeeded = true)
6627 {
6628 PRINT_SPACE
6629 if (str != "")
6630 _OUT << "\"" << str << "\""
6631 << " : ";
6632 const int max_bits = 64; // We don't expect the number to be larger.
6633 std::bitset<max_bits> b(obj);
6634 _OUT << "\"";
6635 if (obj == 0)
6636 _OUT << "0";
6637 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6638 {
6639 if (b[i] == 1)
6640 {
6641 bitCount++;
6642 if (bitCount < b.count())
6643 _OUT << VkRenderPassCreateFlagBits_map[1ULL << i] << " | ";
6644 else
6645 _OUT << VkRenderPassCreateFlagBits_map[1ULL << i];
6646 }
6647 }
6648 if (commaNeeded)
6649 _OUT << "\""
6650 << ",";
6651 else
6652 _OUT << "\""
6653 << "";
6654 _OUT << std::endl;
6655 }
print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj,const std::string & str,bool commaNeeded=true)6656 static void print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags *obj, const std::string &str,
6657 bool commaNeeded = true)
6658 {
6659 PRINT_SPACE
6660 if (str != "")
6661 _OUT << "\"" << str << "\""
6662 << " : ";
6663 const int max_bits = 64; // We don't expect the number to be larger.
6664 std::bitset<max_bits> b(obj);
6665 _OUT << "\"";
6666 if (obj == 0)
6667 _OUT << "0";
6668 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6669 {
6670 if (b[i] == 1)
6671 {
6672 bitCount++;
6673 if (bitCount < b.count())
6674 _OUT << VkRenderPassCreateFlagBits_map[1ULL << i] << " | ";
6675 else
6676 _OUT << VkRenderPassCreateFlagBits_map[1ULL << i];
6677 }
6678 }
6679 if (commaNeeded)
6680 _OUT << "\""
6681 << ",";
6682 else
6683 _OUT << "\""
6684 << "";
6685 _OUT << std::endl;
6686 }
6687
print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj,const std::string & str,bool commaNeeded=true)6688 static void print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj, const std::string &str,
6689 bool commaNeeded = true)
6690 {
6691 PRINT_SPACE
6692 if (str != "")
6693 _OUT << "\"" << str << "\""
6694 << " : ";
6695 const int max_bits = 64; // We don't expect the number to be larger.
6696 std::bitset<max_bits> b(obj);
6697 _OUT << "\"";
6698 if (obj == 0)
6699 _OUT << "0";
6700 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6701 {
6702 if (b[i] == 1)
6703 {
6704 bitCount++;
6705 if (bitCount < b.count())
6706 _OUT << VkSubpassDescriptionFlagBits_map[1ULL << i] << " | ";
6707 else
6708 _OUT << VkSubpassDescriptionFlagBits_map[1ULL << i];
6709 }
6710 }
6711 if (commaNeeded)
6712 _OUT << "\""
6713 << ",";
6714 else
6715 _OUT << "\""
6716 << "";
6717 _OUT << std::endl;
6718 }
print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * obj,const std::string & str,bool commaNeeded=true)6719 static void print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags *obj, const std::string &str,
6720 bool commaNeeded = true)
6721 {
6722 PRINT_SPACE
6723 if (str != "")
6724 _OUT << "\"" << str << "\""
6725 << " : ";
6726 const int max_bits = 64; // We don't expect the number to be larger.
6727 std::bitset<max_bits> b(obj);
6728 _OUT << "\"";
6729 if (obj == 0)
6730 _OUT << "0";
6731 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6732 {
6733 if (b[i] == 1)
6734 {
6735 bitCount++;
6736 if (bitCount < b.count())
6737 _OUT << VkSubpassDescriptionFlagBits_map[1ULL << i] << " | ";
6738 else
6739 _OUT << VkSubpassDescriptionFlagBits_map[1ULL << i];
6740 }
6741 }
6742 if (commaNeeded)
6743 _OUT << "\""
6744 << ",";
6745 else
6746 _OUT << "\""
6747 << "";
6748 _OUT << std::endl;
6749 }
6750
print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)6751 static void print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj, const std::string &str,
6752 bool commaNeeded = true)
6753 {
6754 PRINT_SPACE
6755 if (str != "")
6756 _OUT << "\"" << str << "\""
6757 << " : ";
6758 const int max_bits = 64; // We don't expect the number to be larger.
6759 std::bitset<max_bits> b(obj);
6760 _OUT << "\"";
6761 if (obj == 0)
6762 _OUT << "0";
6763 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6764 {
6765 if (b[i] == 1)
6766 {
6767 bitCount++;
6768 if (bitCount < b.count())
6769 _OUT << VkCommandPoolCreateFlagBits_map[1ULL << i] << " | ";
6770 else
6771 _OUT << VkCommandPoolCreateFlagBits_map[1ULL << i];
6772 }
6773 }
6774 if (commaNeeded)
6775 _OUT << "\""
6776 << ",";
6777 else
6778 _OUT << "\""
6779 << "";
6780 _OUT << std::endl;
6781 }
print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)6782 static void print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags *obj, const std::string &str,
6783 bool commaNeeded = true)
6784 {
6785 PRINT_SPACE
6786 if (str != "")
6787 _OUT << "\"" << str << "\""
6788 << " : ";
6789 const int max_bits = 64; // We don't expect the number to be larger.
6790 std::bitset<max_bits> b(obj);
6791 _OUT << "\"";
6792 if (obj == 0)
6793 _OUT << "0";
6794 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6795 {
6796 if (b[i] == 1)
6797 {
6798 bitCount++;
6799 if (bitCount < b.count())
6800 _OUT << VkCommandPoolCreateFlagBits_map[1ULL << i] << " | ";
6801 else
6802 _OUT << VkCommandPoolCreateFlagBits_map[1ULL << i];
6803 }
6804 }
6805 if (commaNeeded)
6806 _OUT << "\""
6807 << ",";
6808 else
6809 _OUT << "\""
6810 << "";
6811 _OUT << std::endl;
6812 }
6813
print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj,const std::string & str,bool commaNeeded=true)6814 static void print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj, const std::string &str, bool commaNeeded = true)
6815 {
6816 PRINT_SPACE
6817 if (str != "")
6818 _OUT << "\"" << str << "\""
6819 << " : ";
6820 const int max_bits = 64; // We don't expect the number to be larger.
6821 std::bitset<max_bits> b(obj);
6822 _OUT << "\"";
6823 if (obj == 0)
6824 _OUT << "0";
6825 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6826 {
6827 if (b[i] == 1)
6828 {
6829 bitCount++;
6830 if (bitCount < b.count())
6831 _OUT << VkCommandPoolResetFlagBits_map[1ULL << i] << " | ";
6832 else
6833 _OUT << VkCommandPoolResetFlagBits_map[1ULL << i];
6834 }
6835 }
6836 if (commaNeeded)
6837 _OUT << "\""
6838 << ",";
6839 else
6840 _OUT << "\""
6841 << "";
6842 _OUT << std::endl;
6843 }
print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj,const std::string & str,bool commaNeeded=true)6844 static void print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags *obj, const std::string &str,
6845 bool commaNeeded = true)
6846 {
6847 PRINT_SPACE
6848 if (str != "")
6849 _OUT << "\"" << str << "\""
6850 << " : ";
6851 const int max_bits = 64; // We don't expect the number to be larger.
6852 std::bitset<max_bits> b(obj);
6853 _OUT << "\"";
6854 if (obj == 0)
6855 _OUT << "0";
6856 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6857 {
6858 if (b[i] == 1)
6859 {
6860 bitCount++;
6861 if (bitCount < b.count())
6862 _OUT << VkCommandPoolResetFlagBits_map[1ULL << i] << " | ";
6863 else
6864 _OUT << VkCommandPoolResetFlagBits_map[1ULL << i];
6865 }
6866 }
6867 if (commaNeeded)
6868 _OUT << "\""
6869 << ",";
6870 else
6871 _OUT << "\""
6872 << "";
6873 _OUT << std::endl;
6874 }
6875
print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj,const std::string & str,bool commaNeeded=true)6876 static void print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj, const std::string &str,
6877 bool commaNeeded = true)
6878 {
6879 PRINT_SPACE
6880 if (str != "")
6881 _OUT << "\"" << str << "\""
6882 << " : ";
6883 const int max_bits = 64; // We don't expect the number to be larger.
6884 std::bitset<max_bits> b(obj);
6885 _OUT << "\"";
6886 if (obj == 0)
6887 _OUT << "0";
6888 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6889 {
6890 if (b[i] == 1)
6891 {
6892 bitCount++;
6893 if (bitCount < b.count())
6894 _OUT << VkCommandBufferUsageFlagBits_map[1ULL << i] << " | ";
6895 else
6896 _OUT << VkCommandBufferUsageFlagBits_map[1ULL << i];
6897 }
6898 }
6899 if (commaNeeded)
6900 _OUT << "\""
6901 << ",";
6902 else
6903 _OUT << "\""
6904 << "";
6905 _OUT << std::endl;
6906 }
print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * obj,const std::string & str,bool commaNeeded=true)6907 static void print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags *obj, const std::string &str,
6908 bool commaNeeded = true)
6909 {
6910 PRINT_SPACE
6911 if (str != "")
6912 _OUT << "\"" << str << "\""
6913 << " : ";
6914 const int max_bits = 64; // We don't expect the number to be larger.
6915 std::bitset<max_bits> b(obj);
6916 _OUT << "\"";
6917 if (obj == 0)
6918 _OUT << "0";
6919 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6920 {
6921 if (b[i] == 1)
6922 {
6923 bitCount++;
6924 if (bitCount < b.count())
6925 _OUT << VkCommandBufferUsageFlagBits_map[1ULL << i] << " | ";
6926 else
6927 _OUT << VkCommandBufferUsageFlagBits_map[1ULL << i];
6928 }
6929 }
6930 if (commaNeeded)
6931 _OUT << "\""
6932 << ",";
6933 else
6934 _OUT << "\""
6935 << "";
6936 _OUT << std::endl;
6937 }
6938
print_VkQueryControlFlags(VkQueryControlFlags obj,const std::string & str,bool commaNeeded=true)6939 static void print_VkQueryControlFlags(VkQueryControlFlags obj, const std::string &str, bool commaNeeded = true)
6940 {
6941 PRINT_SPACE
6942 if (str != "")
6943 _OUT << "\"" << str << "\""
6944 << " : ";
6945 const int max_bits = 64; // We don't expect the number to be larger.
6946 std::bitset<max_bits> b(obj);
6947 _OUT << "\"";
6948 if (obj == 0)
6949 _OUT << "0";
6950 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6951 {
6952 if (b[i] == 1)
6953 {
6954 bitCount++;
6955 if (bitCount < b.count())
6956 _OUT << VkQueryControlFlagBits_map[1ULL << i] << " | ";
6957 else
6958 _OUT << VkQueryControlFlagBits_map[1ULL << i];
6959 }
6960 }
6961 if (commaNeeded)
6962 _OUT << "\""
6963 << ",";
6964 else
6965 _OUT << "\""
6966 << "";
6967 _OUT << std::endl;
6968 }
print_VkQueryControlFlags(const VkQueryControlFlags * obj,const std::string & str,bool commaNeeded=true)6969 static void print_VkQueryControlFlags(const VkQueryControlFlags *obj, const std::string &str, bool commaNeeded = true)
6970 {
6971 PRINT_SPACE
6972 if (str != "")
6973 _OUT << "\"" << str << "\""
6974 << " : ";
6975 const int max_bits = 64; // We don't expect the number to be larger.
6976 std::bitset<max_bits> b(obj);
6977 _OUT << "\"";
6978 if (obj == 0)
6979 _OUT << "0";
6980 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
6981 {
6982 if (b[i] == 1)
6983 {
6984 bitCount++;
6985 if (bitCount < b.count())
6986 _OUT << VkQueryControlFlagBits_map[1ULL << i] << " | ";
6987 else
6988 _OUT << VkQueryControlFlagBits_map[1ULL << i];
6989 }
6990 }
6991 if (commaNeeded)
6992 _OUT << "\""
6993 << ",";
6994 else
6995 _OUT << "\""
6996 << "";
6997 _OUT << std::endl;
6998 }
6999
print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj,const std::string & str,bool commaNeeded=true)7000 static void print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj, const std::string &str,
7001 bool commaNeeded = true)
7002 {
7003 PRINT_SPACE
7004 if (str != "")
7005 _OUT << "\"" << str << "\""
7006 << " : ";
7007 const int max_bits = 64; // We don't expect the number to be larger.
7008 std::bitset<max_bits> b(obj);
7009 _OUT << "\"";
7010 if (obj == 0)
7011 _OUT << "0";
7012 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
7013 {
7014 if (b[i] == 1)
7015 {
7016 bitCount++;
7017 if (bitCount < b.count())
7018 _OUT << VkCommandBufferResetFlagBits_map[1ULL << i] << " | ";
7019 else
7020 _OUT << VkCommandBufferResetFlagBits_map[1ULL << i];
7021 }
7022 }
7023 if (commaNeeded)
7024 _OUT << "\""
7025 << ",";
7026 else
7027 _OUT << "\""
7028 << "";
7029 _OUT << std::endl;
7030 }
print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * obj,const std::string & str,bool commaNeeded=true)7031 static void print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags *obj, const std::string &str,
7032 bool commaNeeded = true)
7033 {
7034 PRINT_SPACE
7035 if (str != "")
7036 _OUT << "\"" << str << "\""
7037 << " : ";
7038 const int max_bits = 64; // We don't expect the number to be larger.
7039 std::bitset<max_bits> b(obj);
7040 _OUT << "\"";
7041 if (obj == 0)
7042 _OUT << "0";
7043 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
7044 {
7045 if (b[i] == 1)
7046 {
7047 bitCount++;
7048 if (bitCount < b.count())
7049 _OUT << VkCommandBufferResetFlagBits_map[1ULL << i] << " | ";
7050 else
7051 _OUT << VkCommandBufferResetFlagBits_map[1ULL << i];
7052 }
7053 }
7054 if (commaNeeded)
7055 _OUT << "\""
7056 << ",";
7057 else
7058 _OUT << "\""
7059 << "";
7060 _OUT << std::endl;
7061 }
7062
print_VkStencilFaceFlags(VkStencilFaceFlags obj,const std::string & str,bool commaNeeded=true)7063 static void print_VkStencilFaceFlags(VkStencilFaceFlags obj, const std::string &str, bool commaNeeded = true)
7064 {
7065 PRINT_SPACE
7066 if (str != "")
7067 _OUT << "\"" << str << "\""
7068 << " : ";
7069 const int max_bits = 64; // We don't expect the number to be larger.
7070 std::bitset<max_bits> b(obj);
7071 _OUT << "\"";
7072 if (obj == 0)
7073 _OUT << "0";
7074 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
7075 {
7076 if (b[i] == 1)
7077 {
7078 bitCount++;
7079 if (bitCount < b.count())
7080 _OUT << VkStencilFaceFlagBits_map[1ULL << i] << " | ";
7081 else
7082 _OUT << VkStencilFaceFlagBits_map[1ULL << i];
7083 }
7084 }
7085 if (commaNeeded)
7086 _OUT << "\""
7087 << ",";
7088 else
7089 _OUT << "\""
7090 << "";
7091 _OUT << std::endl;
7092 }
print_VkStencilFaceFlags(const VkStencilFaceFlags * obj,const std::string & str,bool commaNeeded=true)7093 static void print_VkStencilFaceFlags(const VkStencilFaceFlags *obj, const std::string &str, bool commaNeeded = true)
7094 {
7095 PRINT_SPACE
7096 if (str != "")
7097 _OUT << "\"" << str << "\""
7098 << " : ";
7099 const int max_bits = 64; // We don't expect the number to be larger.
7100 std::bitset<max_bits> b(obj);
7101 _OUT << "\"";
7102 if (obj == 0)
7103 _OUT << "0";
7104 for (unsigned int i = 0, bitCount = 0; i < b.size(); i++)
7105 {
7106 if (b[i] == 1)
7107 {
7108 bitCount++;
7109 if (bitCount < b.count())
7110 _OUT << VkStencilFaceFlagBits_map[1ULL << i] << " | ";
7111 else
7112 _OUT << VkStencilFaceFlagBits_map[1ULL << i];
7113 }
7114 }
7115 if (commaNeeded)
7116 _OUT << "\""
7117 << ",";
7118 else
7119 _OUT << "\""
7120 << "";
7121 _OUT << std::endl;
7122 }
7123
print_VkExtent2D(VkExtent2D obj,const std::string & s,bool commaNeeded=true)7124 static void print_VkExtent2D(VkExtent2D obj, const std::string &s, bool commaNeeded = true)
7125 {
7126 PRINT_SPACE
7127 _OUT << "{" << std::endl;
7128 INDENT(4);
7129
7130 print_uint32_t(obj.width, "width", 1);
7131
7132 print_uint32_t(obj.height, "height", 0);
7133
7134 INDENT(-4);
7135 PRINT_SPACE
7136 if (commaNeeded)
7137 _OUT << "}," << std::endl;
7138 else
7139 _OUT << "}" << std::endl;
7140 }
print_VkExtent2D(const VkExtent2D * obj,const std::string & s,bool commaNeeded=true)7141 static void print_VkExtent2D(const VkExtent2D *obj, const std::string &s, bool commaNeeded = true)
7142 {
7143 PRINT_SPACE
7144 _OUT << "{" << std::endl;
7145 INDENT(4);
7146
7147 print_uint32_t(obj->width, "width", 1);
7148
7149 print_uint32_t(obj->height, "height", 0);
7150
7151 INDENT(-4);
7152 PRINT_SPACE
7153 if (commaNeeded)
7154 _OUT << "}," << std::endl;
7155 else
7156 _OUT << "}" << std::endl;
7157 }
7158
print_VkExtent3D(VkExtent3D obj,const std::string & s,bool commaNeeded=true)7159 static void print_VkExtent3D(VkExtent3D obj, const std::string &s, bool commaNeeded = true)
7160 {
7161 PRINT_SPACE
7162 _OUT << "{" << std::endl;
7163 INDENT(4);
7164
7165 print_uint32_t(obj.width, "width", 1);
7166
7167 print_uint32_t(obj.height, "height", 1);
7168
7169 print_uint32_t(obj.depth, "depth", 0);
7170
7171 INDENT(-4);
7172 PRINT_SPACE
7173 if (commaNeeded)
7174 _OUT << "}," << std::endl;
7175 else
7176 _OUT << "}" << std::endl;
7177 }
print_VkExtent3D(const VkExtent3D * obj,const std::string & s,bool commaNeeded=true)7178 static void print_VkExtent3D(const VkExtent3D *obj, const std::string &s, bool commaNeeded = true)
7179 {
7180 PRINT_SPACE
7181 _OUT << "{" << std::endl;
7182 INDENT(4);
7183
7184 print_uint32_t(obj->width, "width", 1);
7185
7186 print_uint32_t(obj->height, "height", 1);
7187
7188 print_uint32_t(obj->depth, "depth", 0);
7189
7190 INDENT(-4);
7191 PRINT_SPACE
7192 if (commaNeeded)
7193 _OUT << "}," << std::endl;
7194 else
7195 _OUT << "}" << std::endl;
7196 }
7197
print_VkOffset2D(VkOffset2D obj,const std::string & s,bool commaNeeded=true)7198 static void print_VkOffset2D(VkOffset2D obj, const std::string &s, bool commaNeeded = true)
7199 {
7200 PRINT_SPACE
7201 _OUT << "{" << std::endl;
7202 INDENT(4);
7203
7204 print_int32_t(obj.x, "x", 1);
7205
7206 print_int32_t(obj.y, "y", 0);
7207
7208 INDENT(-4);
7209 PRINT_SPACE
7210 if (commaNeeded)
7211 _OUT << "}," << std::endl;
7212 else
7213 _OUT << "}" << std::endl;
7214 }
print_VkOffset2D(const VkOffset2D * obj,const std::string & s,bool commaNeeded=true)7215 static void print_VkOffset2D(const VkOffset2D *obj, const std::string &s, bool commaNeeded = true)
7216 {
7217 PRINT_SPACE
7218 _OUT << "{" << std::endl;
7219 INDENT(4);
7220
7221 print_int32_t(obj->x, "x", 1);
7222
7223 print_int32_t(obj->y, "y", 0);
7224
7225 INDENT(-4);
7226 PRINT_SPACE
7227 if (commaNeeded)
7228 _OUT << "}," << std::endl;
7229 else
7230 _OUT << "}" << std::endl;
7231 }
7232
print_VkOffset3D(VkOffset3D obj,const std::string & s,bool commaNeeded=true)7233 static void print_VkOffset3D(VkOffset3D obj, const std::string &s, bool commaNeeded = true)
7234 {
7235 PRINT_SPACE
7236 _OUT << "{" << std::endl;
7237 INDENT(4);
7238
7239 print_int32_t(obj.x, "x", 1);
7240
7241 print_int32_t(obj.y, "y", 1);
7242
7243 print_int32_t(obj.z, "z", 0);
7244
7245 INDENT(-4);
7246 PRINT_SPACE
7247 if (commaNeeded)
7248 _OUT << "}," << std::endl;
7249 else
7250 _OUT << "}" << std::endl;
7251 }
print_VkOffset3D(const VkOffset3D * obj,const std::string & s,bool commaNeeded=true)7252 static void print_VkOffset3D(const VkOffset3D *obj, const std::string &s, bool commaNeeded = true)
7253 {
7254 PRINT_SPACE
7255 _OUT << "{" << std::endl;
7256 INDENT(4);
7257
7258 print_int32_t(obj->x, "x", 1);
7259
7260 print_int32_t(obj->y, "y", 1);
7261
7262 print_int32_t(obj->z, "z", 0);
7263
7264 INDENT(-4);
7265 PRINT_SPACE
7266 if (commaNeeded)
7267 _OUT << "}," << std::endl;
7268 else
7269 _OUT << "}" << std::endl;
7270 }
7271
print_VkRect2D(VkRect2D obj,const std::string & s,bool commaNeeded=true)7272 static void print_VkRect2D(VkRect2D obj, const std::string &s, bool commaNeeded = true)
7273 {
7274 PRINT_SPACE
7275 _OUT << "{" << std::endl;
7276 INDENT(4);
7277
7278 PRINT_SPACE
7279 _OUT << "\"offset\": " << std::endl;
7280 {
7281 print_VkOffset2D(obj.offset, "offset", 1);
7282 }
7283
7284 PRINT_SPACE
7285 _OUT << "\"extent\": " << std::endl;
7286 {
7287 print_VkExtent2D(obj.extent, "extent", 0);
7288 }
7289
7290 INDENT(-4);
7291 PRINT_SPACE
7292 if (commaNeeded)
7293 _OUT << "}," << std::endl;
7294 else
7295 _OUT << "}" << std::endl;
7296 }
print_VkRect2D(const VkRect2D * obj,const std::string & s,bool commaNeeded=true)7297 static void print_VkRect2D(const VkRect2D *obj, const std::string &s, bool commaNeeded = true)
7298 {
7299 PRINT_SPACE
7300 _OUT << "{" << std::endl;
7301 INDENT(4);
7302
7303 PRINT_SPACE
7304 _OUT << "\"offset\": " << std::endl;
7305 {
7306 print_VkOffset2D(obj->offset, "offset", 1);
7307 }
7308
7309 PRINT_SPACE
7310 _OUT << "\"extent\": " << std::endl;
7311 {
7312 print_VkExtent2D(obj->extent, "extent", 0);
7313 }
7314
7315 INDENT(-4);
7316 PRINT_SPACE
7317 if (commaNeeded)
7318 _OUT << "}," << std::endl;
7319 else
7320 _OUT << "}" << std::endl;
7321 }
7322
print_VkBaseInStructure(VkBaseInStructure obj,const std::string & s,bool commaNeeded=true)7323 static void print_VkBaseInStructure(VkBaseInStructure obj, const std::string &s, bool commaNeeded = true)
7324 {
7325 PRINT_SPACE
7326 _OUT << "{" << std::endl;
7327 INDENT(4);
7328
7329 print_VkStructureType(obj.sType, "sType", 1);
7330
7331 if (obj.pNext)
7332 {
7333 dumpPNextChain(obj.pNext);
7334 }
7335 else
7336 {
7337 PRINT_SPACE
7338 _OUT << "\"pNext\":"
7339 << "\"NULL\""
7340 << "," << std::endl;
7341 }
7342
7343 INDENT(-4);
7344 PRINT_SPACE
7345 if (commaNeeded)
7346 _OUT << "}," << std::endl;
7347 else
7348 _OUT << "}" << std::endl;
7349 }
print_VkBaseInStructure(const VkBaseInStructure * obj,const std::string & s,bool commaNeeded=true)7350 static void print_VkBaseInStructure(const VkBaseInStructure *obj, const std::string &s, bool commaNeeded = true)
7351 {
7352 PRINT_SPACE
7353 _OUT << "{" << std::endl;
7354 INDENT(4);
7355
7356 print_VkStructureType(obj->sType, "sType", 1);
7357
7358 if (obj->pNext)
7359 {
7360 dumpPNextChain(obj->pNext);
7361 }
7362 else
7363 {
7364 PRINT_SPACE
7365 _OUT << "\"pNext\":"
7366 << "\"NULL\""
7367 << "," << std::endl;
7368 }
7369
7370 INDENT(-4);
7371 PRINT_SPACE
7372 if (commaNeeded)
7373 _OUT << "}," << std::endl;
7374 else
7375 _OUT << "}" << std::endl;
7376 }
7377
print_VkBaseOutStructure(VkBaseOutStructure obj,const std::string & s,bool commaNeeded=true)7378 static void print_VkBaseOutStructure(VkBaseOutStructure obj, const std::string &s, bool commaNeeded = true)
7379 {
7380 PRINT_SPACE
7381 _OUT << "{" << std::endl;
7382 INDENT(4);
7383
7384 print_VkStructureType(obj.sType, "sType", 1);
7385
7386 if (obj.pNext)
7387 {
7388 dumpPNextChain(obj.pNext);
7389 }
7390 else
7391 {
7392 PRINT_SPACE
7393 _OUT << "\"pNext\":"
7394 << "\"NULL\""
7395 << "," << std::endl;
7396 }
7397
7398 INDENT(-4);
7399 PRINT_SPACE
7400 if (commaNeeded)
7401 _OUT << "}," << std::endl;
7402 else
7403 _OUT << "}" << std::endl;
7404 }
print_VkBaseOutStructure(const VkBaseOutStructure * obj,const std::string & s,bool commaNeeded=true)7405 static void print_VkBaseOutStructure(const VkBaseOutStructure *obj, const std::string &s, bool commaNeeded = true)
7406 {
7407 PRINT_SPACE
7408 _OUT << "{" << std::endl;
7409 INDENT(4);
7410
7411 print_VkStructureType(obj->sType, "sType", 1);
7412
7413 if (obj->pNext)
7414 {
7415 dumpPNextChain(obj->pNext);
7416 }
7417 else
7418 {
7419 PRINT_SPACE
7420 _OUT << "\"pNext\":"
7421 << "\"NULL\""
7422 << "," << std::endl;
7423 }
7424
7425 INDENT(-4);
7426 PRINT_SPACE
7427 if (commaNeeded)
7428 _OUT << "}," << std::endl;
7429 else
7430 _OUT << "}" << std::endl;
7431 }
7432
print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj,const std::string & s,bool commaNeeded=true)7433 static void print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj, const std::string &s, bool commaNeeded = true)
7434 {
7435 PRINT_SPACE
7436 _OUT << "{" << std::endl;
7437 INDENT(4);
7438
7439 print_VkStructureType(obj.sType, "sType", 1);
7440
7441 if (obj.pNext)
7442 {
7443 dumpPNextChain(obj.pNext);
7444 }
7445 else
7446 {
7447 PRINT_SPACE
7448 _OUT << "\"pNext\":"
7449 << "\"NULL\""
7450 << "," << std::endl;
7451 }
7452
7453 print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
7454
7455 print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
7456
7457 print_uint32_t(obj.srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
7458
7459 print_uint32_t(obj.dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
7460
7461 // CTS : required value
7462 PRINT_SPACE _OUT << "\""
7463 << "buffer"
7464 << "\""
7465 << " : "
7466 << "\""
7467 << "\"," << std::endl;
7468
7469 print_VkDeviceSize(obj.offset, "offset", 1);
7470
7471 print_VkDeviceSize(obj.size, "size", 0);
7472
7473 INDENT(-4);
7474 PRINT_SPACE
7475 if (commaNeeded)
7476 _OUT << "}," << std::endl;
7477 else
7478 _OUT << "}" << std::endl;
7479 }
print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)7480 static void print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier *obj, const std::string &s, bool commaNeeded = true)
7481 {
7482 PRINT_SPACE
7483 _OUT << "{" << std::endl;
7484 INDENT(4);
7485
7486 print_VkStructureType(obj->sType, "sType", 1);
7487
7488 if (obj->pNext)
7489 {
7490 dumpPNextChain(obj->pNext);
7491 }
7492 else
7493 {
7494 PRINT_SPACE
7495 _OUT << "\"pNext\":"
7496 << "\"NULL\""
7497 << "," << std::endl;
7498 }
7499
7500 print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
7501
7502 print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
7503
7504 print_uint32_t(obj->srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
7505
7506 print_uint32_t(obj->dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
7507
7508 // CTS : required value
7509 PRINT_SPACE _OUT << "\""
7510 << "buffer"
7511 << "\""
7512 << " : "
7513 << "\""
7514 << "\"," << std::endl;
7515
7516 print_VkDeviceSize(obj->offset, "offset", 1);
7517
7518 print_VkDeviceSize(obj->size, "size", 0);
7519
7520 INDENT(-4);
7521 PRINT_SPACE
7522 if (commaNeeded)
7523 _OUT << "}," << std::endl;
7524 else
7525 _OUT << "}" << std::endl;
7526 }
7527
print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj,const std::string & s,bool commaNeeded=true)7528 static void print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj, const std::string &s,
7529 bool commaNeeded = true)
7530 {
7531 PRINT_SPACE
7532 _OUT << "{" << std::endl;
7533 INDENT(4);
7534
7535 print_uint32_t(obj.x, "x", 1);
7536
7537 print_uint32_t(obj.y, "y", 1);
7538
7539 print_uint32_t(obj.z, "z", 0);
7540
7541 INDENT(-4);
7542 PRINT_SPACE
7543 if (commaNeeded)
7544 _OUT << "}," << std::endl;
7545 else
7546 _OUT << "}" << std::endl;
7547 }
print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * obj,const std::string & s,bool commaNeeded=true)7548 static void print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand *obj, const std::string &s,
7549 bool commaNeeded = true)
7550 {
7551 PRINT_SPACE
7552 _OUT << "{" << std::endl;
7553 INDENT(4);
7554
7555 print_uint32_t(obj->x, "x", 1);
7556
7557 print_uint32_t(obj->y, "y", 1);
7558
7559 print_uint32_t(obj->z, "z", 0);
7560
7561 INDENT(-4);
7562 PRINT_SPACE
7563 if (commaNeeded)
7564 _OUT << "}," << std::endl;
7565 else
7566 _OUT << "}" << std::endl;
7567 }
7568
print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj,const std::string & s,bool commaNeeded=true)7569 static void print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj, const std::string &s,
7570 bool commaNeeded = true)
7571 {
7572 PRINT_SPACE
7573 _OUT << "{" << std::endl;
7574 INDENT(4);
7575
7576 print_uint32_t(obj.indexCount, "indexCount", 1);
7577
7578 print_uint32_t(obj.instanceCount, "instanceCount", 1);
7579
7580 print_uint32_t(obj.firstIndex, "firstIndex", 1);
7581
7582 print_int32_t(obj.vertexOffset, "vertexOffset", 1);
7583
7584 print_uint32_t(obj.firstInstance, "firstInstance", 0);
7585
7586 INDENT(-4);
7587 PRINT_SPACE
7588 if (commaNeeded)
7589 _OUT << "}," << std::endl;
7590 else
7591 _OUT << "}" << std::endl;
7592 }
print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * obj,const std::string & s,bool commaNeeded=true)7593 static void print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand *obj, const std::string &s,
7594 bool commaNeeded = true)
7595 {
7596 PRINT_SPACE
7597 _OUT << "{" << std::endl;
7598 INDENT(4);
7599
7600 print_uint32_t(obj->indexCount, "indexCount", 1);
7601
7602 print_uint32_t(obj->instanceCount, "instanceCount", 1);
7603
7604 print_uint32_t(obj->firstIndex, "firstIndex", 1);
7605
7606 print_int32_t(obj->vertexOffset, "vertexOffset", 1);
7607
7608 print_uint32_t(obj->firstInstance, "firstInstance", 0);
7609
7610 INDENT(-4);
7611 PRINT_SPACE
7612 if (commaNeeded)
7613 _OUT << "}," << std::endl;
7614 else
7615 _OUT << "}" << std::endl;
7616 }
7617
print_VkDrawIndirectCommand(VkDrawIndirectCommand obj,const std::string & s,bool commaNeeded=true)7618 static void print_VkDrawIndirectCommand(VkDrawIndirectCommand obj, const std::string &s, bool commaNeeded = true)
7619 {
7620 PRINT_SPACE
7621 _OUT << "{" << std::endl;
7622 INDENT(4);
7623
7624 print_uint32_t(obj.vertexCount, "vertexCount", 1);
7625
7626 print_uint32_t(obj.instanceCount, "instanceCount", 1);
7627
7628 print_uint32_t(obj.firstVertex, "firstVertex", 1);
7629
7630 print_uint32_t(obj.firstInstance, "firstInstance", 0);
7631
7632 INDENT(-4);
7633 PRINT_SPACE
7634 if (commaNeeded)
7635 _OUT << "}," << std::endl;
7636 else
7637 _OUT << "}" << std::endl;
7638 }
print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj,const std::string & s,bool commaNeeded=true)7639 static void print_VkDrawIndirectCommand(const VkDrawIndirectCommand *obj, const std::string &s, bool commaNeeded = true)
7640 {
7641 PRINT_SPACE
7642 _OUT << "{" << std::endl;
7643 INDENT(4);
7644
7645 print_uint32_t(obj->vertexCount, "vertexCount", 1);
7646
7647 print_uint32_t(obj->instanceCount, "instanceCount", 1);
7648
7649 print_uint32_t(obj->firstVertex, "firstVertex", 1);
7650
7651 print_uint32_t(obj->firstInstance, "firstInstance", 0);
7652
7653 INDENT(-4);
7654 PRINT_SPACE
7655 if (commaNeeded)
7656 _OUT << "}," << std::endl;
7657 else
7658 _OUT << "}" << std::endl;
7659 }
7660
print_VkImageSubresourceRange(VkImageSubresourceRange obj,const std::string & s,bool commaNeeded=true)7661 static void print_VkImageSubresourceRange(VkImageSubresourceRange obj, const std::string &s, bool commaNeeded = true)
7662 {
7663 PRINT_SPACE
7664 _OUT << "{" << std::endl;
7665 INDENT(4);
7666
7667 print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 1);
7668
7669 print_uint32_t(obj.baseMipLevel, "baseMipLevel", 1);
7670
7671 print_uint32_t(obj.levelCount, "levelCount", 1);
7672
7673 print_uint32_t(obj.baseArrayLayer, "baseArrayLayer", 1);
7674
7675 print_uint32_t(obj.layerCount, "layerCount", 0);
7676
7677 INDENT(-4);
7678 PRINT_SPACE
7679 if (commaNeeded)
7680 _OUT << "}," << std::endl;
7681 else
7682 _OUT << "}" << std::endl;
7683 }
print_VkImageSubresourceRange(const VkImageSubresourceRange * obj,const std::string & s,bool commaNeeded=true)7684 static void print_VkImageSubresourceRange(const VkImageSubresourceRange *obj, const std::string &s,
7685 bool commaNeeded = true)
7686 {
7687 PRINT_SPACE
7688 _OUT << "{" << std::endl;
7689 INDENT(4);
7690
7691 print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 1);
7692
7693 print_uint32_t(obj->baseMipLevel, "baseMipLevel", 1);
7694
7695 print_uint32_t(obj->levelCount, "levelCount", 1);
7696
7697 print_uint32_t(obj->baseArrayLayer, "baseArrayLayer", 1);
7698
7699 print_uint32_t(obj->layerCount, "layerCount", 0);
7700
7701 INDENT(-4);
7702 PRINT_SPACE
7703 if (commaNeeded)
7704 _OUT << "}," << std::endl;
7705 else
7706 _OUT << "}" << std::endl;
7707 }
7708
print_VkImageMemoryBarrier(VkImageMemoryBarrier obj,const std::string & s,bool commaNeeded=true)7709 static void print_VkImageMemoryBarrier(VkImageMemoryBarrier obj, const std::string &s, bool commaNeeded = true)
7710 {
7711 PRINT_SPACE
7712 _OUT << "{" << std::endl;
7713 INDENT(4);
7714
7715 print_VkStructureType(obj.sType, "sType", 1);
7716
7717 if (obj.pNext)
7718 {
7719 dumpPNextChain(obj.pNext);
7720 }
7721 else
7722 {
7723 PRINT_SPACE
7724 _OUT << "\"pNext\":"
7725 << "\"NULL\""
7726 << "," << std::endl;
7727 }
7728
7729 print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
7730
7731 print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
7732
7733 print_VkImageLayout(obj.oldLayout, "oldLayout", 1);
7734
7735 print_VkImageLayout(obj.newLayout, "newLayout", 1);
7736
7737 print_uint32_t(obj.srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
7738
7739 print_uint32_t(obj.dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
7740
7741 // CTS : required value
7742 PRINT_SPACE _OUT << "\""
7743 << "image"
7744 << "\""
7745 << " : "
7746 << "\""
7747 << "\"," << std::endl;
7748
7749 PRINT_SPACE
7750 _OUT << "\"subresourceRange\": " << std::endl;
7751 {
7752 print_VkImageSubresourceRange(obj.subresourceRange, "subresourceRange", 0);
7753 }
7754
7755 INDENT(-4);
7756 PRINT_SPACE
7757 if (commaNeeded)
7758 _OUT << "}," << std::endl;
7759 else
7760 _OUT << "}" << std::endl;
7761 }
print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)7762 static void print_VkImageMemoryBarrier(const VkImageMemoryBarrier *obj, const std::string &s, bool commaNeeded = true)
7763 {
7764 PRINT_SPACE
7765 _OUT << "{" << std::endl;
7766 INDENT(4);
7767
7768 print_VkStructureType(obj->sType, "sType", 1);
7769
7770 if (obj->pNext)
7771 {
7772 dumpPNextChain(obj->pNext);
7773 }
7774 else
7775 {
7776 PRINT_SPACE
7777 _OUT << "\"pNext\":"
7778 << "\"NULL\""
7779 << "," << std::endl;
7780 }
7781
7782 print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
7783
7784 print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
7785
7786 print_VkImageLayout(obj->oldLayout, "oldLayout", 1);
7787
7788 print_VkImageLayout(obj->newLayout, "newLayout", 1);
7789
7790 print_uint32_t(obj->srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
7791
7792 print_uint32_t(obj->dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
7793
7794 // CTS : required value
7795 PRINT_SPACE _OUT << "\""
7796 << "image"
7797 << "\""
7798 << " : "
7799 << "\""
7800 << "\"," << std::endl;
7801
7802 PRINT_SPACE
7803 _OUT << "\"subresourceRange\": " << std::endl;
7804 {
7805 print_VkImageSubresourceRange(obj->subresourceRange, "subresourceRange", 0);
7806 }
7807
7808 INDENT(-4);
7809 PRINT_SPACE
7810 if (commaNeeded)
7811 _OUT << "}," << std::endl;
7812 else
7813 _OUT << "}" << std::endl;
7814 }
7815
print_VkMemoryBarrier(VkMemoryBarrier obj,const std::string & s,bool commaNeeded=true)7816 static void print_VkMemoryBarrier(VkMemoryBarrier obj, const std::string &s, bool commaNeeded = true)
7817 {
7818 PRINT_SPACE
7819 _OUT << "{" << std::endl;
7820 INDENT(4);
7821
7822 print_VkStructureType(obj.sType, "sType", 1);
7823
7824 if (obj.pNext)
7825 {
7826 dumpPNextChain(obj.pNext);
7827 }
7828 else
7829 {
7830 PRINT_SPACE
7831 _OUT << "\"pNext\":"
7832 << "\"NULL\""
7833 << "," << std::endl;
7834 }
7835
7836 print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
7837
7838 print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 0);
7839
7840 INDENT(-4);
7841 PRINT_SPACE
7842 if (commaNeeded)
7843 _OUT << "}," << std::endl;
7844 else
7845 _OUT << "}" << std::endl;
7846 }
print_VkMemoryBarrier(const VkMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)7847 static void print_VkMemoryBarrier(const VkMemoryBarrier *obj, const std::string &s, bool commaNeeded = true)
7848 {
7849 PRINT_SPACE
7850 _OUT << "{" << std::endl;
7851 INDENT(4);
7852
7853 print_VkStructureType(obj->sType, "sType", 1);
7854
7855 if (obj->pNext)
7856 {
7857 dumpPNextChain(obj->pNext);
7858 }
7859 else
7860 {
7861 PRINT_SPACE
7862 _OUT << "\"pNext\":"
7863 << "\"NULL\""
7864 << "," << std::endl;
7865 }
7866
7867 print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
7868
7869 print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 0);
7870
7871 INDENT(-4);
7872 PRINT_SPACE
7873 if (commaNeeded)
7874 _OUT << "}," << std::endl;
7875 else
7876 _OUT << "}" << std::endl;
7877 }
7878
print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj,const std::string & s,bool commaNeeded=true)7879 static void print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj, const std::string &s,
7880 bool commaNeeded = true)
7881 {
7882 PRINT_SPACE
7883 _OUT << "{" << std::endl;
7884 INDENT(4);
7885
7886 print_uint32_t(obj.headerSize, "headerSize", 1);
7887
7888 print_VkPipelineCacheHeaderVersion(obj.headerVersion, "headerVersion", 1);
7889
7890 print_uint32_t(obj.vendorID, "vendorID", 1);
7891
7892 print_uint32_t(obj.deviceID, "deviceID", 1);
7893
7894 PRINT_SPACE
7895 _OUT << "\"pipelineCacheUUID\":" << std::endl;
7896 PRINT_SPACE
7897 _OUT << "[" << std::endl;
7898 for (unsigned int i = 0; i < VK_UUID_SIZE; i++)
7899 {
7900 bool isCommaNeeded = (i + 1) != VK_UUID_SIZE;
7901 print_uint8_t(obj.pipelineCacheUUID[i], "", isCommaNeeded);
7902 }
7903 PRINT_SPACE
7904 _OUT << "]"
7905 << "" << std::endl;
7906
7907 INDENT(-4);
7908 PRINT_SPACE
7909 if (commaNeeded)
7910 _OUT << "}," << std::endl;
7911 else
7912 _OUT << "}" << std::endl;
7913 }
print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * obj,const std::string & s,bool commaNeeded=true)7914 static void print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne *obj, const std::string &s,
7915 bool commaNeeded = true)
7916 {
7917 PRINT_SPACE
7918 _OUT << "{" << std::endl;
7919 INDENT(4);
7920
7921 print_uint32_t(obj->headerSize, "headerSize", 1);
7922
7923 print_VkPipelineCacheHeaderVersion(obj->headerVersion, "headerVersion", 1);
7924
7925 print_uint32_t(obj->vendorID, "vendorID", 1);
7926
7927 print_uint32_t(obj->deviceID, "deviceID", 1);
7928
7929 PRINT_SPACE
7930 _OUT << "\"pipelineCacheUUID\":" << std::endl;
7931 PRINT_SPACE
7932 _OUT << "[" << std::endl;
7933 for (unsigned int i = 0; i < VK_UUID_SIZE; i++)
7934 {
7935 bool isCommaNeeded = (i + 1) != VK_UUID_SIZE;
7936 print_uint8_t(obj->pipelineCacheUUID[i], "", isCommaNeeded);
7937 }
7938 PRINT_SPACE
7939 _OUT << "]"
7940 << "" << std::endl;
7941
7942 INDENT(-4);
7943 PRINT_SPACE
7944 if (commaNeeded)
7945 _OUT << "}," << std::endl;
7946 else
7947 _OUT << "}" << std::endl;
7948 }
7949
print_VkAllocationCallbacks(VkAllocationCallbacks obj,const std::string & s,bool commaNeeded=true)7950 static void print_VkAllocationCallbacks(VkAllocationCallbacks obj, const std::string &s, bool commaNeeded = true)
7951 {
7952 PRINT_SPACE
7953 _OUT << "{" << std::endl;
7954 INDENT(4);
7955
7956 /** Note: Ignoring void* data. **/
7957
7958 /** Note: Ignoring function pointer (PFN_vkAllocationFunction). **/
7959
7960 /** Note: Ignoring function pointer (PFN_vkReallocationFunction). **/
7961
7962 /** Note: Ignoring function pointer (PFN_vkFreeFunction). **/
7963
7964 /** Note: Ignoring function pointer (PFN_vkInternalAllocationNotification). **/
7965
7966 /** Note: Ignoring function pointer (PFN_vkInternalFreeNotification). **/
7967
7968 INDENT(-4);
7969 PRINT_SPACE
7970 if (commaNeeded)
7971 _OUT << "}," << std::endl;
7972 else
7973 _OUT << "}" << std::endl;
7974 }
print_VkAllocationCallbacks(const VkAllocationCallbacks * obj,const std::string & s,bool commaNeeded=true)7975 static void print_VkAllocationCallbacks(const VkAllocationCallbacks *obj, const std::string &s, bool commaNeeded = true)
7976 {
7977 PRINT_SPACE
7978 _OUT << "{" << std::endl;
7979 INDENT(4);
7980
7981 /** Note: Ignoring void* data. **/
7982
7983 /** Note: Ignoring function pointer (PFN_vkAllocationFunction). **/
7984
7985 /** Note: Ignoring function pointer (PFN_vkReallocationFunction). **/
7986
7987 /** Note: Ignoring function pointer (PFN_vkFreeFunction). **/
7988
7989 /** Note: Ignoring function pointer (PFN_vkInternalAllocationNotification). **/
7990
7991 /** Note: Ignoring function pointer (PFN_vkInternalFreeNotification). **/
7992
7993 INDENT(-4);
7994 PRINT_SPACE
7995 if (commaNeeded)
7996 _OUT << "}," << std::endl;
7997 else
7998 _OUT << "}" << std::endl;
7999 }
8000
print_VkApplicationInfo(VkApplicationInfo obj,const std::string & s,bool commaNeeded=true)8001 static void print_VkApplicationInfo(VkApplicationInfo obj, const std::string &s, bool commaNeeded = true)
8002 {
8003 PRINT_SPACE
8004 _OUT << "{" << std::endl;
8005 INDENT(4);
8006
8007 print_VkStructureType(obj.sType, "sType", 1);
8008
8009 if (obj.pNext)
8010 {
8011 dumpPNextChain(obj.pNext);
8012 }
8013 else
8014 {
8015 PRINT_SPACE
8016 _OUT << "\"pNext\":"
8017 << "\"NULL\""
8018 << "," << std::endl;
8019 }
8020
8021 print_char(obj.pApplicationName, "pApplicationName", 1);
8022
8023 print_uint32_t(obj.applicationVersion, "applicationVersion", 1);
8024
8025 print_char(obj.pEngineName, "pEngineName", 1);
8026
8027 print_uint32_t(obj.engineVersion, "engineVersion", 1);
8028
8029 print_uint32_t(obj.apiVersion, "apiVersion", 0);
8030
8031 INDENT(-4);
8032 PRINT_SPACE
8033 if (commaNeeded)
8034 _OUT << "}," << std::endl;
8035 else
8036 _OUT << "}" << std::endl;
8037 }
print_VkApplicationInfo(const VkApplicationInfo * obj,const std::string & s,bool commaNeeded=true)8038 static void print_VkApplicationInfo(const VkApplicationInfo *obj, const std::string &s, bool commaNeeded = true)
8039 {
8040 PRINT_SPACE
8041 _OUT << "{" << std::endl;
8042 INDENT(4);
8043
8044 print_VkStructureType(obj->sType, "sType", 1);
8045
8046 if (obj->pNext)
8047 {
8048 dumpPNextChain(obj->pNext);
8049 }
8050 else
8051 {
8052 PRINT_SPACE
8053 _OUT << "\"pNext\":"
8054 << "\"NULL\""
8055 << "," << std::endl;
8056 }
8057
8058 print_char(obj->pApplicationName, "pApplicationName", 1);
8059
8060 print_uint32_t(obj->applicationVersion, "applicationVersion", 1);
8061
8062 print_char(obj->pEngineName, "pEngineName", 1);
8063
8064 print_uint32_t(obj->engineVersion, "engineVersion", 1);
8065
8066 print_uint32_t(obj->apiVersion, "apiVersion", 0);
8067
8068 INDENT(-4);
8069 PRINT_SPACE
8070 if (commaNeeded)
8071 _OUT << "}," << std::endl;
8072 else
8073 _OUT << "}" << std::endl;
8074 }
8075
print_VkFormatProperties(VkFormatProperties obj,const std::string & s,bool commaNeeded=true)8076 static void print_VkFormatProperties(VkFormatProperties obj, const std::string &s, bool commaNeeded = true)
8077 {
8078 PRINT_SPACE
8079 _OUT << "{" << std::endl;
8080 INDENT(4);
8081
8082 print_VkFormatFeatureFlags(obj.linearTilingFeatures, "linearTilingFeatures", 1);
8083
8084 print_VkFormatFeatureFlags(obj.optimalTilingFeatures, "optimalTilingFeatures", 1);
8085
8086 print_VkFormatFeatureFlags(obj.bufferFeatures, "bufferFeatures", 0);
8087
8088 INDENT(-4);
8089 PRINT_SPACE
8090 if (commaNeeded)
8091 _OUT << "}," << std::endl;
8092 else
8093 _OUT << "}" << std::endl;
8094 }
print_VkFormatProperties(const VkFormatProperties * obj,const std::string & s,bool commaNeeded=true)8095 static void print_VkFormatProperties(const VkFormatProperties *obj, const std::string &s, bool commaNeeded = true)
8096 {
8097 PRINT_SPACE
8098 _OUT << "{" << std::endl;
8099 INDENT(4);
8100
8101 print_VkFormatFeatureFlags(obj->linearTilingFeatures, "linearTilingFeatures", 1);
8102
8103 print_VkFormatFeatureFlags(obj->optimalTilingFeatures, "optimalTilingFeatures", 1);
8104
8105 print_VkFormatFeatureFlags(obj->bufferFeatures, "bufferFeatures", 0);
8106
8107 INDENT(-4);
8108 PRINT_SPACE
8109 if (commaNeeded)
8110 _OUT << "}," << std::endl;
8111 else
8112 _OUT << "}" << std::endl;
8113 }
8114
print_VkImageFormatProperties(VkImageFormatProperties obj,const std::string & s,bool commaNeeded=true)8115 static void print_VkImageFormatProperties(VkImageFormatProperties obj, const std::string &s, bool commaNeeded = true)
8116 {
8117 PRINT_SPACE
8118 _OUT << "{" << std::endl;
8119 INDENT(4);
8120
8121 PRINT_SPACE
8122 _OUT << "\"maxExtent\": " << std::endl;
8123 {
8124 print_VkExtent3D(obj.maxExtent, "maxExtent", 1);
8125 }
8126
8127 print_uint32_t(obj.maxMipLevels, "maxMipLevels", 1);
8128
8129 print_uint32_t(obj.maxArrayLayers, "maxArrayLayers", 1);
8130
8131 print_VkSampleCountFlags(obj.sampleCounts, "sampleCounts", 1);
8132
8133 print_VkDeviceSize(obj.maxResourceSize, "maxResourceSize", 0);
8134
8135 INDENT(-4);
8136 PRINT_SPACE
8137 if (commaNeeded)
8138 _OUT << "}," << std::endl;
8139 else
8140 _OUT << "}" << std::endl;
8141 }
print_VkImageFormatProperties(const VkImageFormatProperties * obj,const std::string & s,bool commaNeeded=true)8142 static void print_VkImageFormatProperties(const VkImageFormatProperties *obj, const std::string &s,
8143 bool commaNeeded = true)
8144 {
8145 PRINT_SPACE
8146 _OUT << "{" << std::endl;
8147 INDENT(4);
8148
8149 PRINT_SPACE
8150 _OUT << "\"maxExtent\": " << std::endl;
8151 {
8152 print_VkExtent3D(obj->maxExtent, "maxExtent", 1);
8153 }
8154
8155 print_uint32_t(obj->maxMipLevels, "maxMipLevels", 1);
8156
8157 print_uint32_t(obj->maxArrayLayers, "maxArrayLayers", 1);
8158
8159 print_VkSampleCountFlags(obj->sampleCounts, "sampleCounts", 1);
8160
8161 print_VkDeviceSize(obj->maxResourceSize, "maxResourceSize", 0);
8162
8163 INDENT(-4);
8164 PRINT_SPACE
8165 if (commaNeeded)
8166 _OUT << "}," << std::endl;
8167 else
8168 _OUT << "}" << std::endl;
8169 }
8170
print_VkInstanceCreateInfo(VkInstanceCreateInfo obj,const std::string & s,bool commaNeeded=true)8171 static void print_VkInstanceCreateInfo(VkInstanceCreateInfo obj, const std::string &s, bool commaNeeded = true)
8172 {
8173 PRINT_SPACE
8174 _OUT << "{" << std::endl;
8175 INDENT(4);
8176
8177 print_VkStructureType(obj.sType, "sType", 1);
8178
8179 if (obj.pNext)
8180 {
8181 dumpPNextChain(obj.pNext);
8182 }
8183 else
8184 {
8185 PRINT_SPACE
8186 _OUT << "\"pNext\":"
8187 << "\"NULL\""
8188 << "," << std::endl;
8189 }
8190
8191 print_VkInstanceCreateFlags(obj.flags, "flags", 1);
8192
8193 PRINT_SPACE
8194 _OUT << "\"pApplicationInfo\": " << std::endl;
8195 if (obj.pApplicationInfo)
8196 {
8197 print_VkApplicationInfo(obj.pApplicationInfo, "pApplicationInfo", 1);
8198 }
8199 else
8200 {
8201 PRINT_SPACE _OUT << "\"NULL\""
8202 << "," << std::endl;
8203 }
8204
8205 print_uint32_t(obj.enabledLayerCount, "enabledLayerCount", 1);
8206
8207 print_char(obj.ppEnabledLayerNames, "ppEnabledLayerNames", 1);
8208
8209 print_uint32_t(obj.enabledExtensionCount, "enabledExtensionCount", 1);
8210
8211 print_char(obj.ppEnabledExtensionNames, "ppEnabledExtensionNames", 0);
8212
8213 INDENT(-4);
8214 PRINT_SPACE
8215 if (commaNeeded)
8216 _OUT << "}," << std::endl;
8217 else
8218 _OUT << "}" << std::endl;
8219 }
print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj,const std::string & s,bool commaNeeded=true)8220 static void print_VkInstanceCreateInfo(const VkInstanceCreateInfo *obj, const std::string &s, bool commaNeeded = true)
8221 {
8222 PRINT_SPACE
8223 _OUT << "{" << std::endl;
8224 INDENT(4);
8225
8226 print_VkStructureType(obj->sType, "sType", 1);
8227
8228 if (obj->pNext)
8229 {
8230 dumpPNextChain(obj->pNext);
8231 }
8232 else
8233 {
8234 PRINT_SPACE
8235 _OUT << "\"pNext\":"
8236 << "\"NULL\""
8237 << "," << std::endl;
8238 }
8239
8240 print_VkInstanceCreateFlags(obj->flags, "flags", 1);
8241
8242 PRINT_SPACE
8243 _OUT << "\"pApplicationInfo\": " << std::endl;
8244 if (obj->pApplicationInfo)
8245 {
8246 print_VkApplicationInfo(obj->pApplicationInfo, "pApplicationInfo", 1);
8247 }
8248 else
8249 {
8250 PRINT_SPACE _OUT << "\"NULL\""
8251 << "," << std::endl;
8252 }
8253
8254 print_uint32_t(obj->enabledLayerCount, "enabledLayerCount", 1);
8255
8256 print_char(obj->ppEnabledLayerNames, "ppEnabledLayerNames", 1);
8257
8258 print_uint32_t(obj->enabledExtensionCount, "enabledExtensionCount", 1);
8259
8260 print_char(obj->ppEnabledExtensionNames, "ppEnabledExtensionNames", 0);
8261
8262 INDENT(-4);
8263 PRINT_SPACE
8264 if (commaNeeded)
8265 _OUT << "}," << std::endl;
8266 else
8267 _OUT << "}" << std::endl;
8268 }
8269
print_VkMemoryHeap(VkMemoryHeap obj,const std::string & s,bool commaNeeded=true)8270 static void print_VkMemoryHeap(VkMemoryHeap obj, const std::string &s, bool commaNeeded = true)
8271 {
8272 PRINT_SPACE
8273 _OUT << "{" << std::endl;
8274 INDENT(4);
8275
8276 print_VkDeviceSize(obj.size, "size", 1);
8277
8278 print_VkMemoryHeapFlags(obj.flags, "flags", 0);
8279
8280 INDENT(-4);
8281 PRINT_SPACE
8282 if (commaNeeded)
8283 _OUT << "}," << std::endl;
8284 else
8285 _OUT << "}" << std::endl;
8286 }
print_VkMemoryHeap(const VkMemoryHeap * obj,const std::string & s,bool commaNeeded=true)8287 static void print_VkMemoryHeap(const VkMemoryHeap *obj, const std::string &s, bool commaNeeded = true)
8288 {
8289 PRINT_SPACE
8290 _OUT << "{" << std::endl;
8291 INDENT(4);
8292
8293 print_VkDeviceSize(obj->size, "size", 1);
8294
8295 print_VkMemoryHeapFlags(obj->flags, "flags", 0);
8296
8297 INDENT(-4);
8298 PRINT_SPACE
8299 if (commaNeeded)
8300 _OUT << "}," << std::endl;
8301 else
8302 _OUT << "}" << std::endl;
8303 }
8304
print_VkMemoryType(VkMemoryType obj,const std::string & s,bool commaNeeded=true)8305 static void print_VkMemoryType(VkMemoryType obj, const std::string &s, bool commaNeeded = true)
8306 {
8307 PRINT_SPACE
8308 _OUT << "{" << std::endl;
8309 INDENT(4);
8310
8311 print_VkMemoryPropertyFlags(obj.propertyFlags, "propertyFlags", 1);
8312
8313 print_uint32_t(obj.heapIndex, "heapIndex", 0);
8314
8315 INDENT(-4);
8316 PRINT_SPACE
8317 if (commaNeeded)
8318 _OUT << "}," << std::endl;
8319 else
8320 _OUT << "}" << std::endl;
8321 }
print_VkMemoryType(const VkMemoryType * obj,const std::string & s,bool commaNeeded=true)8322 static void print_VkMemoryType(const VkMemoryType *obj, const std::string &s, bool commaNeeded = true)
8323 {
8324 PRINT_SPACE
8325 _OUT << "{" << std::endl;
8326 INDENT(4);
8327
8328 print_VkMemoryPropertyFlags(obj->propertyFlags, "propertyFlags", 1);
8329
8330 print_uint32_t(obj->heapIndex, "heapIndex", 0);
8331
8332 INDENT(-4);
8333 PRINT_SPACE
8334 if (commaNeeded)
8335 _OUT << "}," << std::endl;
8336 else
8337 _OUT << "}" << std::endl;
8338 }
8339
print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj,const std::string & s,bool commaNeeded=true)8340 static void print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj, const std::string &s, bool commaNeeded = true)
8341 {
8342 PRINT_SPACE
8343 _OUT << "{" << std::endl;
8344 INDENT(4);
8345
8346 print_VkBool32(obj.robustBufferAccess, "robustBufferAccess", 1);
8347
8348 print_VkBool32(obj.fullDrawIndexUint32, "fullDrawIndexUint32", 1);
8349
8350 print_VkBool32(obj.imageCubeArray, "imageCubeArray", 1);
8351
8352 print_VkBool32(obj.independentBlend, "independentBlend", 1);
8353
8354 print_VkBool32(obj.geometryShader, "geometryShader", 1);
8355
8356 print_VkBool32(obj.tessellationShader, "tessellationShader", 1);
8357
8358 print_VkBool32(obj.sampleRateShading, "sampleRateShading", 1);
8359
8360 print_VkBool32(obj.dualSrcBlend, "dualSrcBlend", 1);
8361
8362 print_VkBool32(obj.logicOp, "logicOp", 1);
8363
8364 print_VkBool32(obj.multiDrawIndirect, "multiDrawIndirect", 1);
8365
8366 print_VkBool32(obj.drawIndirectFirstInstance, "drawIndirectFirstInstance", 1);
8367
8368 print_VkBool32(obj.depthClamp, "depthClamp", 1);
8369
8370 print_VkBool32(obj.depthBiasClamp, "depthBiasClamp", 1);
8371
8372 print_VkBool32(obj.fillModeNonSolid, "fillModeNonSolid", 1);
8373
8374 print_VkBool32(obj.depthBounds, "depthBounds", 1);
8375
8376 print_VkBool32(obj.wideLines, "wideLines", 1);
8377
8378 print_VkBool32(obj.largePoints, "largePoints", 1);
8379
8380 print_VkBool32(obj.alphaToOne, "alphaToOne", 1);
8381
8382 print_VkBool32(obj.multiViewport, "multiViewport", 1);
8383
8384 print_VkBool32(obj.samplerAnisotropy, "samplerAnisotropy", 1);
8385
8386 print_VkBool32(obj.textureCompressionETC2, "textureCompressionETC2", 1);
8387
8388 print_VkBool32(obj.textureCompressionASTC_LDR, "textureCompressionASTC_LDR", 1);
8389
8390 print_VkBool32(obj.textureCompressionBC, "textureCompressionBC", 1);
8391
8392 print_VkBool32(obj.occlusionQueryPrecise, "occlusionQueryPrecise", 1);
8393
8394 print_VkBool32(obj.pipelineStatisticsQuery, "pipelineStatisticsQuery", 1);
8395
8396 print_VkBool32(obj.vertexPipelineStoresAndAtomics, "vertexPipelineStoresAndAtomics", 1);
8397
8398 print_VkBool32(obj.fragmentStoresAndAtomics, "fragmentStoresAndAtomics", 1);
8399
8400 print_VkBool32(obj.shaderTessellationAndGeometryPointSize, "shaderTessellationAndGeometryPointSize", 1);
8401
8402 print_VkBool32(obj.shaderImageGatherExtended, "shaderImageGatherExtended", 1);
8403
8404 print_VkBool32(obj.shaderStorageImageExtendedFormats, "shaderStorageImageExtendedFormats", 1);
8405
8406 print_VkBool32(obj.shaderStorageImageMultisample, "shaderStorageImageMultisample", 1);
8407
8408 print_VkBool32(obj.shaderStorageImageReadWithoutFormat, "shaderStorageImageReadWithoutFormat", 1);
8409
8410 print_VkBool32(obj.shaderStorageImageWriteWithoutFormat, "shaderStorageImageWriteWithoutFormat", 1);
8411
8412 print_VkBool32(obj.shaderUniformBufferArrayDynamicIndexing, "shaderUniformBufferArrayDynamicIndexing", 1);
8413
8414 print_VkBool32(obj.shaderSampledImageArrayDynamicIndexing, "shaderSampledImageArrayDynamicIndexing", 1);
8415
8416 print_VkBool32(obj.shaderStorageBufferArrayDynamicIndexing, "shaderStorageBufferArrayDynamicIndexing", 1);
8417
8418 print_VkBool32(obj.shaderStorageImageArrayDynamicIndexing, "shaderStorageImageArrayDynamicIndexing", 1);
8419
8420 print_VkBool32(obj.shaderClipDistance, "shaderClipDistance", 1);
8421
8422 print_VkBool32(obj.shaderCullDistance, "shaderCullDistance", 1);
8423
8424 print_VkBool32(obj.shaderFloat64, "shaderFloat64", 1);
8425
8426 print_VkBool32(obj.shaderInt64, "shaderInt64", 1);
8427
8428 print_VkBool32(obj.shaderInt16, "shaderInt16", 1);
8429
8430 print_VkBool32(obj.shaderResourceResidency, "shaderResourceResidency", 1);
8431
8432 print_VkBool32(obj.shaderResourceMinLod, "shaderResourceMinLod", 1);
8433
8434 print_VkBool32(obj.sparseBinding, "sparseBinding", 1);
8435
8436 print_VkBool32(obj.sparseResidencyBuffer, "sparseResidencyBuffer", 1);
8437
8438 print_VkBool32(obj.sparseResidencyImage2D, "sparseResidencyImage2D", 1);
8439
8440 print_VkBool32(obj.sparseResidencyImage3D, "sparseResidencyImage3D", 1);
8441
8442 print_VkBool32(obj.sparseResidency2Samples, "sparseResidency2Samples", 1);
8443
8444 print_VkBool32(obj.sparseResidency4Samples, "sparseResidency4Samples", 1);
8445
8446 print_VkBool32(obj.sparseResidency8Samples, "sparseResidency8Samples", 1);
8447
8448 print_VkBool32(obj.sparseResidency16Samples, "sparseResidency16Samples", 1);
8449
8450 print_VkBool32(obj.sparseResidencyAliased, "sparseResidencyAliased", 1);
8451
8452 print_VkBool32(obj.variableMultisampleRate, "variableMultisampleRate", 1);
8453
8454 print_VkBool32(obj.inheritedQueries, "inheritedQueries", 0);
8455
8456 INDENT(-4);
8457 PRINT_SPACE
8458 if (commaNeeded)
8459 _OUT << "}," << std::endl;
8460 else
8461 _OUT << "}" << std::endl;
8462 }
print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj,const std::string & s,bool commaNeeded=true)8463 static void print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures *obj, const std::string &s,
8464 bool commaNeeded = true)
8465 {
8466 PRINT_SPACE
8467 _OUT << "{" << std::endl;
8468 INDENT(4);
8469
8470 print_VkBool32(obj->robustBufferAccess, "robustBufferAccess", 1);
8471
8472 print_VkBool32(obj->fullDrawIndexUint32, "fullDrawIndexUint32", 1);
8473
8474 print_VkBool32(obj->imageCubeArray, "imageCubeArray", 1);
8475
8476 print_VkBool32(obj->independentBlend, "independentBlend", 1);
8477
8478 print_VkBool32(obj->geometryShader, "geometryShader", 1);
8479
8480 print_VkBool32(obj->tessellationShader, "tessellationShader", 1);
8481
8482 print_VkBool32(obj->sampleRateShading, "sampleRateShading", 1);
8483
8484 print_VkBool32(obj->dualSrcBlend, "dualSrcBlend", 1);
8485
8486 print_VkBool32(obj->logicOp, "logicOp", 1);
8487
8488 print_VkBool32(obj->multiDrawIndirect, "multiDrawIndirect", 1);
8489
8490 print_VkBool32(obj->drawIndirectFirstInstance, "drawIndirectFirstInstance", 1);
8491
8492 print_VkBool32(obj->depthClamp, "depthClamp", 1);
8493
8494 print_VkBool32(obj->depthBiasClamp, "depthBiasClamp", 1);
8495
8496 print_VkBool32(obj->fillModeNonSolid, "fillModeNonSolid", 1);
8497
8498 print_VkBool32(obj->depthBounds, "depthBounds", 1);
8499
8500 print_VkBool32(obj->wideLines, "wideLines", 1);
8501
8502 print_VkBool32(obj->largePoints, "largePoints", 1);
8503
8504 print_VkBool32(obj->alphaToOne, "alphaToOne", 1);
8505
8506 print_VkBool32(obj->multiViewport, "multiViewport", 1);
8507
8508 print_VkBool32(obj->samplerAnisotropy, "samplerAnisotropy", 1);
8509
8510 print_VkBool32(obj->textureCompressionETC2, "textureCompressionETC2", 1);
8511
8512 print_VkBool32(obj->textureCompressionASTC_LDR, "textureCompressionASTC_LDR", 1);
8513
8514 print_VkBool32(obj->textureCompressionBC, "textureCompressionBC", 1);
8515
8516 print_VkBool32(obj->occlusionQueryPrecise, "occlusionQueryPrecise", 1);
8517
8518 print_VkBool32(obj->pipelineStatisticsQuery, "pipelineStatisticsQuery", 1);
8519
8520 print_VkBool32(obj->vertexPipelineStoresAndAtomics, "vertexPipelineStoresAndAtomics", 1);
8521
8522 print_VkBool32(obj->fragmentStoresAndAtomics, "fragmentStoresAndAtomics", 1);
8523
8524 print_VkBool32(obj->shaderTessellationAndGeometryPointSize, "shaderTessellationAndGeometryPointSize", 1);
8525
8526 print_VkBool32(obj->shaderImageGatherExtended, "shaderImageGatherExtended", 1);
8527
8528 print_VkBool32(obj->shaderStorageImageExtendedFormats, "shaderStorageImageExtendedFormats", 1);
8529
8530 print_VkBool32(obj->shaderStorageImageMultisample, "shaderStorageImageMultisample", 1);
8531
8532 print_VkBool32(obj->shaderStorageImageReadWithoutFormat, "shaderStorageImageReadWithoutFormat", 1);
8533
8534 print_VkBool32(obj->shaderStorageImageWriteWithoutFormat, "shaderStorageImageWriteWithoutFormat", 1);
8535
8536 print_VkBool32(obj->shaderUniformBufferArrayDynamicIndexing, "shaderUniformBufferArrayDynamicIndexing", 1);
8537
8538 print_VkBool32(obj->shaderSampledImageArrayDynamicIndexing, "shaderSampledImageArrayDynamicIndexing", 1);
8539
8540 print_VkBool32(obj->shaderStorageBufferArrayDynamicIndexing, "shaderStorageBufferArrayDynamicIndexing", 1);
8541
8542 print_VkBool32(obj->shaderStorageImageArrayDynamicIndexing, "shaderStorageImageArrayDynamicIndexing", 1);
8543
8544 print_VkBool32(obj->shaderClipDistance, "shaderClipDistance", 1);
8545
8546 print_VkBool32(obj->shaderCullDistance, "shaderCullDistance", 1);
8547
8548 print_VkBool32(obj->shaderFloat64, "shaderFloat64", 1);
8549
8550 print_VkBool32(obj->shaderInt64, "shaderInt64", 1);
8551
8552 print_VkBool32(obj->shaderInt16, "shaderInt16", 1);
8553
8554 print_VkBool32(obj->shaderResourceResidency, "shaderResourceResidency", 1);
8555
8556 print_VkBool32(obj->shaderResourceMinLod, "shaderResourceMinLod", 1);
8557
8558 print_VkBool32(obj->sparseBinding, "sparseBinding", 1);
8559
8560 print_VkBool32(obj->sparseResidencyBuffer, "sparseResidencyBuffer", 1);
8561
8562 print_VkBool32(obj->sparseResidencyImage2D, "sparseResidencyImage2D", 1);
8563
8564 print_VkBool32(obj->sparseResidencyImage3D, "sparseResidencyImage3D", 1);
8565
8566 print_VkBool32(obj->sparseResidency2Samples, "sparseResidency2Samples", 1);
8567
8568 print_VkBool32(obj->sparseResidency4Samples, "sparseResidency4Samples", 1);
8569
8570 print_VkBool32(obj->sparseResidency8Samples, "sparseResidency8Samples", 1);
8571
8572 print_VkBool32(obj->sparseResidency16Samples, "sparseResidency16Samples", 1);
8573
8574 print_VkBool32(obj->sparseResidencyAliased, "sparseResidencyAliased", 1);
8575
8576 print_VkBool32(obj->variableMultisampleRate, "variableMultisampleRate", 1);
8577
8578 print_VkBool32(obj->inheritedQueries, "inheritedQueries", 0);
8579
8580 INDENT(-4);
8581 PRINT_SPACE
8582 if (commaNeeded)
8583 _OUT << "}," << std::endl;
8584 else
8585 _OUT << "}" << std::endl;
8586 }
8587
print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj,const std::string & s,bool commaNeeded=true)8588 static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::string &s, bool commaNeeded = true)
8589 {
8590 PRINT_SPACE
8591 _OUT << "{" << std::endl;
8592 INDENT(4);
8593
8594 print_uint32_t(obj.maxImageDimension1D, "maxImageDimension1D", 1);
8595
8596 print_uint32_t(obj.maxImageDimension2D, "maxImageDimension2D", 1);
8597
8598 print_uint32_t(obj.maxImageDimension3D, "maxImageDimension3D", 1);
8599
8600 print_uint32_t(obj.maxImageDimensionCube, "maxImageDimensionCube", 1);
8601
8602 print_uint32_t(obj.maxImageArrayLayers, "maxImageArrayLayers", 1);
8603
8604 print_uint32_t(obj.maxTexelBufferElements, "maxTexelBufferElements", 1);
8605
8606 print_uint32_t(obj.maxUniformBufferRange, "maxUniformBufferRange", 1);
8607
8608 print_uint32_t(obj.maxStorageBufferRange, "maxStorageBufferRange", 1);
8609
8610 print_uint32_t(obj.maxPushConstantsSize, "maxPushConstantsSize", 1);
8611
8612 print_uint32_t(obj.maxMemoryAllocationCount, "maxMemoryAllocationCount", 1);
8613
8614 print_uint32_t(obj.maxSamplerAllocationCount, "maxSamplerAllocationCount", 1);
8615
8616 print_VkDeviceSize(obj.bufferImageGranularity, "bufferImageGranularity", 1);
8617
8618 print_VkDeviceSize(obj.sparseAddressSpaceSize, "sparseAddressSpaceSize", 1);
8619
8620 print_uint32_t(obj.maxBoundDescriptorSets, "maxBoundDescriptorSets", 1);
8621
8622 print_uint32_t(obj.maxPerStageDescriptorSamplers, "maxPerStageDescriptorSamplers", 1);
8623
8624 print_uint32_t(obj.maxPerStageDescriptorUniformBuffers, "maxPerStageDescriptorUniformBuffers", 1);
8625
8626 print_uint32_t(obj.maxPerStageDescriptorStorageBuffers, "maxPerStageDescriptorStorageBuffers", 1);
8627
8628 print_uint32_t(obj.maxPerStageDescriptorSampledImages, "maxPerStageDescriptorSampledImages", 1);
8629
8630 print_uint32_t(obj.maxPerStageDescriptorStorageImages, "maxPerStageDescriptorStorageImages", 1);
8631
8632 print_uint32_t(obj.maxPerStageDescriptorInputAttachments, "maxPerStageDescriptorInputAttachments", 1);
8633
8634 print_uint32_t(obj.maxPerStageResources, "maxPerStageResources", 1);
8635
8636 print_uint32_t(obj.maxDescriptorSetSamplers, "maxDescriptorSetSamplers", 1);
8637
8638 print_uint32_t(obj.maxDescriptorSetUniformBuffers, "maxDescriptorSetUniformBuffers", 1);
8639
8640 print_uint32_t(obj.maxDescriptorSetUniformBuffersDynamic, "maxDescriptorSetUniformBuffersDynamic", 1);
8641
8642 print_uint32_t(obj.maxDescriptorSetStorageBuffers, "maxDescriptorSetStorageBuffers", 1);
8643
8644 print_uint32_t(obj.maxDescriptorSetStorageBuffersDynamic, "maxDescriptorSetStorageBuffersDynamic", 1);
8645
8646 print_uint32_t(obj.maxDescriptorSetSampledImages, "maxDescriptorSetSampledImages", 1);
8647
8648 print_uint32_t(obj.maxDescriptorSetStorageImages, "maxDescriptorSetStorageImages", 1);
8649
8650 print_uint32_t(obj.maxDescriptorSetInputAttachments, "maxDescriptorSetInputAttachments", 1);
8651
8652 print_uint32_t(obj.maxVertexInputAttributes, "maxVertexInputAttributes", 1);
8653
8654 print_uint32_t(obj.maxVertexInputBindings, "maxVertexInputBindings", 1);
8655
8656 print_uint32_t(obj.maxVertexInputAttributeOffset, "maxVertexInputAttributeOffset", 1);
8657
8658 print_uint32_t(obj.maxVertexInputBindingStride, "maxVertexInputBindingStride", 1);
8659
8660 print_uint32_t(obj.maxVertexOutputComponents, "maxVertexOutputComponents", 1);
8661
8662 print_uint32_t(obj.maxTessellationGenerationLevel, "maxTessellationGenerationLevel", 1);
8663
8664 print_uint32_t(obj.maxTessellationPatchSize, "maxTessellationPatchSize", 1);
8665
8666 print_uint32_t(obj.maxTessellationControlPerVertexInputComponents, "maxTessellationControlPerVertexInputComponents",
8667 1);
8668
8669 print_uint32_t(obj.maxTessellationControlPerVertexOutputComponents,
8670 "maxTessellationControlPerVertexOutputComponents", 1);
8671
8672 print_uint32_t(obj.maxTessellationControlPerPatchOutputComponents, "maxTessellationControlPerPatchOutputComponents",
8673 1);
8674
8675 print_uint32_t(obj.maxTessellationControlTotalOutputComponents, "maxTessellationControlTotalOutputComponents", 1);
8676
8677 print_uint32_t(obj.maxTessellationEvaluationInputComponents, "maxTessellationEvaluationInputComponents", 1);
8678
8679 print_uint32_t(obj.maxTessellationEvaluationOutputComponents, "maxTessellationEvaluationOutputComponents", 1);
8680
8681 print_uint32_t(obj.maxGeometryShaderInvocations, "maxGeometryShaderInvocations", 1);
8682
8683 print_uint32_t(obj.maxGeometryInputComponents, "maxGeometryInputComponents", 1);
8684
8685 print_uint32_t(obj.maxGeometryOutputComponents, "maxGeometryOutputComponents", 1);
8686
8687 print_uint32_t(obj.maxGeometryOutputVertices, "maxGeometryOutputVertices", 1);
8688
8689 print_uint32_t(obj.maxGeometryTotalOutputComponents, "maxGeometryTotalOutputComponents", 1);
8690
8691 print_uint32_t(obj.maxFragmentInputComponents, "maxFragmentInputComponents", 1);
8692
8693 print_uint32_t(obj.maxFragmentOutputAttachments, "maxFragmentOutputAttachments", 1);
8694
8695 print_uint32_t(obj.maxFragmentDualSrcAttachments, "maxFragmentDualSrcAttachments", 1);
8696
8697 print_uint32_t(obj.maxFragmentCombinedOutputResources, "maxFragmentCombinedOutputResources", 1);
8698
8699 print_uint32_t(obj.maxComputeSharedMemorySize, "maxComputeSharedMemorySize", 1);
8700
8701 PRINT_SPACE
8702 _OUT << "\"maxComputeWorkGroupCount\":" << std::endl;
8703 PRINT_SPACE
8704 _OUT << "[" << std::endl;
8705 for (unsigned int i = 0; i < 3; i++)
8706 {
8707 bool isCommaNeeded = (i + 1) != 3;
8708 print_uint32_t(obj.maxComputeWorkGroupCount[i], "", isCommaNeeded);
8709 }
8710 PRINT_SPACE
8711 _OUT << "]"
8712 << "," << std::endl;
8713
8714 print_uint32_t(obj.maxComputeWorkGroupInvocations, "maxComputeWorkGroupInvocations", 1);
8715
8716 PRINT_SPACE
8717 _OUT << "\"maxComputeWorkGroupSize\":" << std::endl;
8718 PRINT_SPACE
8719 _OUT << "[" << std::endl;
8720 for (unsigned int i = 0; i < 3; i++)
8721 {
8722 bool isCommaNeeded = (i + 1) != 3;
8723 print_uint32_t(obj.maxComputeWorkGroupSize[i], "", isCommaNeeded);
8724 }
8725 PRINT_SPACE
8726 _OUT << "]"
8727 << "," << std::endl;
8728
8729 print_uint32_t(obj.subPixelPrecisionBits, "subPixelPrecisionBits", 1);
8730
8731 print_uint32_t(obj.subTexelPrecisionBits, "subTexelPrecisionBits", 1);
8732
8733 print_uint32_t(obj.mipmapPrecisionBits, "mipmapPrecisionBits", 1);
8734
8735 print_uint32_t(obj.maxDrawIndexedIndexValue, "maxDrawIndexedIndexValue", 1);
8736
8737 print_uint32_t(obj.maxDrawIndirectCount, "maxDrawIndirectCount", 1);
8738
8739 print_float(obj.maxSamplerLodBias, "maxSamplerLodBias", 1);
8740
8741 print_float(obj.maxSamplerAnisotropy, "maxSamplerAnisotropy", 1);
8742
8743 print_uint32_t(obj.maxViewports, "maxViewports", 1);
8744
8745 PRINT_SPACE
8746 _OUT << "\"maxViewportDimensions\":" << std::endl;
8747 PRINT_SPACE
8748 _OUT << "[" << std::endl;
8749 for (unsigned int i = 0; i < 2; i++)
8750 {
8751 bool isCommaNeeded = (i + 1) != 2;
8752 print_uint32_t(obj.maxViewportDimensions[i], "", isCommaNeeded);
8753 }
8754 PRINT_SPACE
8755 _OUT << "]"
8756 << "," << std::endl;
8757
8758 PRINT_SPACE
8759 _OUT << "\"viewportBoundsRange\":" << std::endl;
8760 PRINT_SPACE
8761 _OUT << "[" << std::endl;
8762 for (unsigned int i = 0; i < 2; i++)
8763 {
8764 bool isCommaNeeded = (i + 1) != 2;
8765 print_float(obj.viewportBoundsRange[i], "", isCommaNeeded);
8766 }
8767 PRINT_SPACE
8768 _OUT << "]"
8769 << "," << std::endl;
8770
8771 print_uint32_t(obj.viewportSubPixelBits, "viewportSubPixelBits", 1);
8772
8773 print_size_t(obj.minMemoryMapAlignment, "minMemoryMapAlignment", 1);
8774
8775 print_VkDeviceSize(obj.minTexelBufferOffsetAlignment, "minTexelBufferOffsetAlignment", 1);
8776
8777 print_VkDeviceSize(obj.minUniformBufferOffsetAlignment, "minUniformBufferOffsetAlignment", 1);
8778
8779 print_VkDeviceSize(obj.minStorageBufferOffsetAlignment, "minStorageBufferOffsetAlignment", 1);
8780
8781 print_int32_t(obj.minTexelOffset, "minTexelOffset", 1);
8782
8783 print_uint32_t(obj.maxTexelOffset, "maxTexelOffset", 1);
8784
8785 print_int32_t(obj.minTexelGatherOffset, "minTexelGatherOffset", 1);
8786
8787 print_uint32_t(obj.maxTexelGatherOffset, "maxTexelGatherOffset", 1);
8788
8789 print_float(obj.minInterpolationOffset, "minInterpolationOffset", 1);
8790
8791 print_float(obj.maxInterpolationOffset, "maxInterpolationOffset", 1);
8792
8793 print_uint32_t(obj.subPixelInterpolationOffsetBits, "subPixelInterpolationOffsetBits", 1);
8794
8795 print_uint32_t(obj.maxFramebufferWidth, "maxFramebufferWidth", 1);
8796
8797 print_uint32_t(obj.maxFramebufferHeight, "maxFramebufferHeight", 1);
8798
8799 print_uint32_t(obj.maxFramebufferLayers, "maxFramebufferLayers", 1);
8800
8801 print_VkSampleCountFlags(obj.framebufferColorSampleCounts, "framebufferColorSampleCounts", 1);
8802
8803 print_VkSampleCountFlags(obj.framebufferDepthSampleCounts, "framebufferDepthSampleCounts", 1);
8804
8805 print_VkSampleCountFlags(obj.framebufferStencilSampleCounts, "framebufferStencilSampleCounts", 1);
8806
8807 print_VkSampleCountFlags(obj.framebufferNoAttachmentsSampleCounts, "framebufferNoAttachmentsSampleCounts", 1);
8808
8809 print_uint32_t(obj.maxColorAttachments, "maxColorAttachments", 1);
8810
8811 print_VkSampleCountFlags(obj.sampledImageColorSampleCounts, "sampledImageColorSampleCounts", 1);
8812
8813 print_VkSampleCountFlags(obj.sampledImageIntegerSampleCounts, "sampledImageIntegerSampleCounts", 1);
8814
8815 print_VkSampleCountFlags(obj.sampledImageDepthSampleCounts, "sampledImageDepthSampleCounts", 1);
8816
8817 print_VkSampleCountFlags(obj.sampledImageStencilSampleCounts, "sampledImageStencilSampleCounts", 1);
8818
8819 print_VkSampleCountFlags(obj.storageImageSampleCounts, "storageImageSampleCounts", 1);
8820
8821 print_uint32_t(obj.maxSampleMaskWords, "maxSampleMaskWords", 1);
8822
8823 print_VkBool32(obj.timestampComputeAndGraphics, "timestampComputeAndGraphics", 1);
8824
8825 print_float(obj.timestampPeriod, "timestampPeriod", 1);
8826
8827 print_uint32_t(obj.maxClipDistances, "maxClipDistances", 1);
8828
8829 print_uint32_t(obj.maxCullDistances, "maxCullDistances", 1);
8830
8831 print_uint32_t(obj.maxCombinedClipAndCullDistances, "maxCombinedClipAndCullDistances", 1);
8832
8833 print_uint32_t(obj.discreteQueuePriorities, "discreteQueuePriorities", 1);
8834
8835 PRINT_SPACE
8836 _OUT << "\"pointSizeRange\":" << std::endl;
8837 PRINT_SPACE
8838 _OUT << "[" << std::endl;
8839 for (unsigned int i = 0; i < 2; i++)
8840 {
8841 bool isCommaNeeded = (i + 1) != 2;
8842 print_float(obj.pointSizeRange[i], "", isCommaNeeded);
8843 }
8844 PRINT_SPACE
8845 _OUT << "]"
8846 << "," << std::endl;
8847
8848 PRINT_SPACE
8849 _OUT << "\"lineWidthRange\":" << std::endl;
8850 PRINT_SPACE
8851 _OUT << "[" << std::endl;
8852 for (unsigned int i = 0; i < 2; i++)
8853 {
8854 bool isCommaNeeded = (i + 1) != 2;
8855 print_float(obj.lineWidthRange[i], "", isCommaNeeded);
8856 }
8857 PRINT_SPACE
8858 _OUT << "]"
8859 << "," << std::endl;
8860
8861 print_float(obj.pointSizeGranularity, "pointSizeGranularity", 1);
8862
8863 print_float(obj.lineWidthGranularity, "lineWidthGranularity", 1);
8864
8865 print_VkBool32(obj.strictLines, "strictLines", 1);
8866
8867 print_VkBool32(obj.standardSampleLocations, "standardSampleLocations", 1);
8868
8869 print_VkDeviceSize(obj.optimalBufferCopyOffsetAlignment, "optimalBufferCopyOffsetAlignment", 1);
8870
8871 print_VkDeviceSize(obj.optimalBufferCopyRowPitchAlignment, "optimalBufferCopyRowPitchAlignment", 1);
8872
8873 print_VkDeviceSize(obj.nonCoherentAtomSize, "nonCoherentAtomSize", 0);
8874
8875 INDENT(-4);
8876 PRINT_SPACE
8877 if (commaNeeded)
8878 _OUT << "}," << std::endl;
8879 else
8880 _OUT << "}" << std::endl;
8881 }
print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj,const std::string & s,bool commaNeeded=true)8882 static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits *obj, const std::string &s,
8883 bool commaNeeded = true)
8884 {
8885 PRINT_SPACE
8886 _OUT << "{" << std::endl;
8887 INDENT(4);
8888
8889 print_uint32_t(obj->maxImageDimension1D, "maxImageDimension1D", 1);
8890
8891 print_uint32_t(obj->maxImageDimension2D, "maxImageDimension2D", 1);
8892
8893 print_uint32_t(obj->maxImageDimension3D, "maxImageDimension3D", 1);
8894
8895 print_uint32_t(obj->maxImageDimensionCube, "maxImageDimensionCube", 1);
8896
8897 print_uint32_t(obj->maxImageArrayLayers, "maxImageArrayLayers", 1);
8898
8899 print_uint32_t(obj->maxTexelBufferElements, "maxTexelBufferElements", 1);
8900
8901 print_uint32_t(obj->maxUniformBufferRange, "maxUniformBufferRange", 1);
8902
8903 print_uint32_t(obj->maxStorageBufferRange, "maxStorageBufferRange", 1);
8904
8905 print_uint32_t(obj->maxPushConstantsSize, "maxPushConstantsSize", 1);
8906
8907 print_uint32_t(obj->maxMemoryAllocationCount, "maxMemoryAllocationCount", 1);
8908
8909 print_uint32_t(obj->maxSamplerAllocationCount, "maxSamplerAllocationCount", 1);
8910
8911 print_VkDeviceSize(obj->bufferImageGranularity, "bufferImageGranularity", 1);
8912
8913 print_VkDeviceSize(obj->sparseAddressSpaceSize, "sparseAddressSpaceSize", 1);
8914
8915 print_uint32_t(obj->maxBoundDescriptorSets, "maxBoundDescriptorSets", 1);
8916
8917 print_uint32_t(obj->maxPerStageDescriptorSamplers, "maxPerStageDescriptorSamplers", 1);
8918
8919 print_uint32_t(obj->maxPerStageDescriptorUniformBuffers, "maxPerStageDescriptorUniformBuffers", 1);
8920
8921 print_uint32_t(obj->maxPerStageDescriptorStorageBuffers, "maxPerStageDescriptorStorageBuffers", 1);
8922
8923 print_uint32_t(obj->maxPerStageDescriptorSampledImages, "maxPerStageDescriptorSampledImages", 1);
8924
8925 print_uint32_t(obj->maxPerStageDescriptorStorageImages, "maxPerStageDescriptorStorageImages", 1);
8926
8927 print_uint32_t(obj->maxPerStageDescriptorInputAttachments, "maxPerStageDescriptorInputAttachments", 1);
8928
8929 print_uint32_t(obj->maxPerStageResources, "maxPerStageResources", 1);
8930
8931 print_uint32_t(obj->maxDescriptorSetSamplers, "maxDescriptorSetSamplers", 1);
8932
8933 print_uint32_t(obj->maxDescriptorSetUniformBuffers, "maxDescriptorSetUniformBuffers", 1);
8934
8935 print_uint32_t(obj->maxDescriptorSetUniformBuffersDynamic, "maxDescriptorSetUniformBuffersDynamic", 1);
8936
8937 print_uint32_t(obj->maxDescriptorSetStorageBuffers, "maxDescriptorSetStorageBuffers", 1);
8938
8939 print_uint32_t(obj->maxDescriptorSetStorageBuffersDynamic, "maxDescriptorSetStorageBuffersDynamic", 1);
8940
8941 print_uint32_t(obj->maxDescriptorSetSampledImages, "maxDescriptorSetSampledImages", 1);
8942
8943 print_uint32_t(obj->maxDescriptorSetStorageImages, "maxDescriptorSetStorageImages", 1);
8944
8945 print_uint32_t(obj->maxDescriptorSetInputAttachments, "maxDescriptorSetInputAttachments", 1);
8946
8947 print_uint32_t(obj->maxVertexInputAttributes, "maxVertexInputAttributes", 1);
8948
8949 print_uint32_t(obj->maxVertexInputBindings, "maxVertexInputBindings", 1);
8950
8951 print_uint32_t(obj->maxVertexInputAttributeOffset, "maxVertexInputAttributeOffset", 1);
8952
8953 print_uint32_t(obj->maxVertexInputBindingStride, "maxVertexInputBindingStride", 1);
8954
8955 print_uint32_t(obj->maxVertexOutputComponents, "maxVertexOutputComponents", 1);
8956
8957 print_uint32_t(obj->maxTessellationGenerationLevel, "maxTessellationGenerationLevel", 1);
8958
8959 print_uint32_t(obj->maxTessellationPatchSize, "maxTessellationPatchSize", 1);
8960
8961 print_uint32_t(obj->maxTessellationControlPerVertexInputComponents,
8962 "maxTessellationControlPerVertexInputComponents", 1);
8963
8964 print_uint32_t(obj->maxTessellationControlPerVertexOutputComponents,
8965 "maxTessellationControlPerVertexOutputComponents", 1);
8966
8967 print_uint32_t(obj->maxTessellationControlPerPatchOutputComponents,
8968 "maxTessellationControlPerPatchOutputComponents", 1);
8969
8970 print_uint32_t(obj->maxTessellationControlTotalOutputComponents, "maxTessellationControlTotalOutputComponents", 1);
8971
8972 print_uint32_t(obj->maxTessellationEvaluationInputComponents, "maxTessellationEvaluationInputComponents", 1);
8973
8974 print_uint32_t(obj->maxTessellationEvaluationOutputComponents, "maxTessellationEvaluationOutputComponents", 1);
8975
8976 print_uint32_t(obj->maxGeometryShaderInvocations, "maxGeometryShaderInvocations", 1);
8977
8978 print_uint32_t(obj->maxGeometryInputComponents, "maxGeometryInputComponents", 1);
8979
8980 print_uint32_t(obj->maxGeometryOutputComponents, "maxGeometryOutputComponents", 1);
8981
8982 print_uint32_t(obj->maxGeometryOutputVertices, "maxGeometryOutputVertices", 1);
8983
8984 print_uint32_t(obj->maxGeometryTotalOutputComponents, "maxGeometryTotalOutputComponents", 1);
8985
8986 print_uint32_t(obj->maxFragmentInputComponents, "maxFragmentInputComponents", 1);
8987
8988 print_uint32_t(obj->maxFragmentOutputAttachments, "maxFragmentOutputAttachments", 1);
8989
8990 print_uint32_t(obj->maxFragmentDualSrcAttachments, "maxFragmentDualSrcAttachments", 1);
8991
8992 print_uint32_t(obj->maxFragmentCombinedOutputResources, "maxFragmentCombinedOutputResources", 1);
8993
8994 print_uint32_t(obj->maxComputeSharedMemorySize, "maxComputeSharedMemorySize", 1);
8995
8996 PRINT_SPACE
8997 _OUT << "\"maxComputeWorkGroupCount\":" << std::endl;
8998 PRINT_SPACE
8999 _OUT << "[" << std::endl;
9000 for (unsigned int i = 0; i < 3; i++)
9001 {
9002 bool isCommaNeeded = (i + 1) != 3;
9003 print_uint32_t(obj->maxComputeWorkGroupCount[i], "", isCommaNeeded);
9004 }
9005 PRINT_SPACE
9006 _OUT << "]"
9007 << "," << std::endl;
9008
9009 print_uint32_t(obj->maxComputeWorkGroupInvocations, "maxComputeWorkGroupInvocations", 1);
9010
9011 PRINT_SPACE
9012 _OUT << "\"maxComputeWorkGroupSize\":" << std::endl;
9013 PRINT_SPACE
9014 _OUT << "[" << std::endl;
9015 for (unsigned int i = 0; i < 3; i++)
9016 {
9017 bool isCommaNeeded = (i + 1) != 3;
9018 print_uint32_t(obj->maxComputeWorkGroupSize[i], "", isCommaNeeded);
9019 }
9020 PRINT_SPACE
9021 _OUT << "]"
9022 << "," << std::endl;
9023
9024 print_uint32_t(obj->subPixelPrecisionBits, "subPixelPrecisionBits", 1);
9025
9026 print_uint32_t(obj->subTexelPrecisionBits, "subTexelPrecisionBits", 1);
9027
9028 print_uint32_t(obj->mipmapPrecisionBits, "mipmapPrecisionBits", 1);
9029
9030 print_uint32_t(obj->maxDrawIndexedIndexValue, "maxDrawIndexedIndexValue", 1);
9031
9032 print_uint32_t(obj->maxDrawIndirectCount, "maxDrawIndirectCount", 1);
9033
9034 print_float(obj->maxSamplerLodBias, "maxSamplerLodBias", 1);
9035
9036 print_float(obj->maxSamplerAnisotropy, "maxSamplerAnisotropy", 1);
9037
9038 print_uint32_t(obj->maxViewports, "maxViewports", 1);
9039
9040 PRINT_SPACE
9041 _OUT << "\"maxViewportDimensions\":" << std::endl;
9042 PRINT_SPACE
9043 _OUT << "[" << std::endl;
9044 for (unsigned int i = 0; i < 2; i++)
9045 {
9046 bool isCommaNeeded = (i + 1) != 2;
9047 print_uint32_t(obj->maxViewportDimensions[i], "", isCommaNeeded);
9048 }
9049 PRINT_SPACE
9050 _OUT << "]"
9051 << "," << std::endl;
9052
9053 PRINT_SPACE
9054 _OUT << "\"viewportBoundsRange\":" << std::endl;
9055 PRINT_SPACE
9056 _OUT << "[" << std::endl;
9057 for (unsigned int i = 0; i < 2; i++)
9058 {
9059 bool isCommaNeeded = (i + 1) != 2;
9060 print_float(obj->viewportBoundsRange[i], "", isCommaNeeded);
9061 }
9062 PRINT_SPACE
9063 _OUT << "]"
9064 << "," << std::endl;
9065
9066 print_uint32_t(obj->viewportSubPixelBits, "viewportSubPixelBits", 1);
9067
9068 print_size_t(obj->minMemoryMapAlignment, "minMemoryMapAlignment", 1);
9069
9070 print_VkDeviceSize(obj->minTexelBufferOffsetAlignment, "minTexelBufferOffsetAlignment", 1);
9071
9072 print_VkDeviceSize(obj->minUniformBufferOffsetAlignment, "minUniformBufferOffsetAlignment", 1);
9073
9074 print_VkDeviceSize(obj->minStorageBufferOffsetAlignment, "minStorageBufferOffsetAlignment", 1);
9075
9076 print_int32_t(obj->minTexelOffset, "minTexelOffset", 1);
9077
9078 print_uint32_t(obj->maxTexelOffset, "maxTexelOffset", 1);
9079
9080 print_int32_t(obj->minTexelGatherOffset, "minTexelGatherOffset", 1);
9081
9082 print_uint32_t(obj->maxTexelGatherOffset, "maxTexelGatherOffset", 1);
9083
9084 print_float(obj->minInterpolationOffset, "minInterpolationOffset", 1);
9085
9086 print_float(obj->maxInterpolationOffset, "maxInterpolationOffset", 1);
9087
9088 print_uint32_t(obj->subPixelInterpolationOffsetBits, "subPixelInterpolationOffsetBits", 1);
9089
9090 print_uint32_t(obj->maxFramebufferWidth, "maxFramebufferWidth", 1);
9091
9092 print_uint32_t(obj->maxFramebufferHeight, "maxFramebufferHeight", 1);
9093
9094 print_uint32_t(obj->maxFramebufferLayers, "maxFramebufferLayers", 1);
9095
9096 print_VkSampleCountFlags(obj->framebufferColorSampleCounts, "framebufferColorSampleCounts", 1);
9097
9098 print_VkSampleCountFlags(obj->framebufferDepthSampleCounts, "framebufferDepthSampleCounts", 1);
9099
9100 print_VkSampleCountFlags(obj->framebufferStencilSampleCounts, "framebufferStencilSampleCounts", 1);
9101
9102 print_VkSampleCountFlags(obj->framebufferNoAttachmentsSampleCounts, "framebufferNoAttachmentsSampleCounts", 1);
9103
9104 print_uint32_t(obj->maxColorAttachments, "maxColorAttachments", 1);
9105
9106 print_VkSampleCountFlags(obj->sampledImageColorSampleCounts, "sampledImageColorSampleCounts", 1);
9107
9108 print_VkSampleCountFlags(obj->sampledImageIntegerSampleCounts, "sampledImageIntegerSampleCounts", 1);
9109
9110 print_VkSampleCountFlags(obj->sampledImageDepthSampleCounts, "sampledImageDepthSampleCounts", 1);
9111
9112 print_VkSampleCountFlags(obj->sampledImageStencilSampleCounts, "sampledImageStencilSampleCounts", 1);
9113
9114 print_VkSampleCountFlags(obj->storageImageSampleCounts, "storageImageSampleCounts", 1);
9115
9116 print_uint32_t(obj->maxSampleMaskWords, "maxSampleMaskWords", 1);
9117
9118 print_VkBool32(obj->timestampComputeAndGraphics, "timestampComputeAndGraphics", 1);
9119
9120 print_float(obj->timestampPeriod, "timestampPeriod", 1);
9121
9122 print_uint32_t(obj->maxClipDistances, "maxClipDistances", 1);
9123
9124 print_uint32_t(obj->maxCullDistances, "maxCullDistances", 1);
9125
9126 print_uint32_t(obj->maxCombinedClipAndCullDistances, "maxCombinedClipAndCullDistances", 1);
9127
9128 print_uint32_t(obj->discreteQueuePriorities, "discreteQueuePriorities", 1);
9129
9130 PRINT_SPACE
9131 _OUT << "\"pointSizeRange\":" << std::endl;
9132 PRINT_SPACE
9133 _OUT << "[" << std::endl;
9134 for (unsigned int i = 0; i < 2; i++)
9135 {
9136 bool isCommaNeeded = (i + 1) != 2;
9137 print_float(obj->pointSizeRange[i], "", isCommaNeeded);
9138 }
9139 PRINT_SPACE
9140 _OUT << "]"
9141 << "," << std::endl;
9142
9143 PRINT_SPACE
9144 _OUT << "\"lineWidthRange\":" << std::endl;
9145 PRINT_SPACE
9146 _OUT << "[" << std::endl;
9147 for (unsigned int i = 0; i < 2; i++)
9148 {
9149 bool isCommaNeeded = (i + 1) != 2;
9150 print_float(obj->lineWidthRange[i], "", isCommaNeeded);
9151 }
9152 PRINT_SPACE
9153 _OUT << "]"
9154 << "," << std::endl;
9155
9156 print_float(obj->pointSizeGranularity, "pointSizeGranularity", 1);
9157
9158 print_float(obj->lineWidthGranularity, "lineWidthGranularity", 1);
9159
9160 print_VkBool32(obj->strictLines, "strictLines", 1);
9161
9162 print_VkBool32(obj->standardSampleLocations, "standardSampleLocations", 1);
9163
9164 print_VkDeviceSize(obj->optimalBufferCopyOffsetAlignment, "optimalBufferCopyOffsetAlignment", 1);
9165
9166 print_VkDeviceSize(obj->optimalBufferCopyRowPitchAlignment, "optimalBufferCopyRowPitchAlignment", 1);
9167
9168 print_VkDeviceSize(obj->nonCoherentAtomSize, "nonCoherentAtomSize", 0);
9169
9170 INDENT(-4);
9171 PRINT_SPACE
9172 if (commaNeeded)
9173 _OUT << "}," << std::endl;
9174 else
9175 _OUT << "}" << std::endl;
9176 }
9177
print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj,const std::string & s,bool commaNeeded=true)9178 static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj, const std::string &s,
9179 bool commaNeeded = true)
9180 {
9181 PRINT_SPACE
9182 _OUT << "{" << std::endl;
9183 INDENT(4);
9184
9185 print_uint32_t(obj.memoryTypeCount, "memoryTypeCount", 1);
9186
9187 PRINT_SPACE
9188 _OUT << "\"memoryTypes\":" << std::endl;
9189 PRINT_SPACE
9190 _OUT << "[" << std::endl;
9191 for (unsigned int i = 0; i < VK_MAX_MEMORY_TYPES; i++)
9192 {
9193 bool isCommaNeeded = (i + 1) != VK_MAX_MEMORY_TYPES;
9194 print_VkMemoryType(obj.memoryTypes[i], "", isCommaNeeded);
9195 }
9196 PRINT_SPACE
9197 _OUT << "]"
9198 << "," << std::endl;
9199
9200 print_uint32_t(obj.memoryHeapCount, "memoryHeapCount", 1);
9201
9202 PRINT_SPACE
9203 _OUT << "\"memoryHeaps\":" << std::endl;
9204 PRINT_SPACE
9205 _OUT << "[" << std::endl;
9206 for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++)
9207 {
9208 bool isCommaNeeded = (i + 1) != VK_MAX_MEMORY_HEAPS;
9209 print_VkMemoryHeap(obj.memoryHeaps[i], "", isCommaNeeded);
9210 }
9211 PRINT_SPACE
9212 _OUT << "]"
9213 << "" << std::endl;
9214
9215 INDENT(-4);
9216 PRINT_SPACE
9217 if (commaNeeded)
9218 _OUT << "}," << std::endl;
9219 else
9220 _OUT << "}" << std::endl;
9221 }
print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * obj,const std::string & s,bool commaNeeded=true)9222 static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties *obj, const std::string &s,
9223 bool commaNeeded = true)
9224 {
9225 PRINT_SPACE
9226 _OUT << "{" << std::endl;
9227 INDENT(4);
9228
9229 print_uint32_t(obj->memoryTypeCount, "memoryTypeCount", 1);
9230
9231 PRINT_SPACE
9232 _OUT << "\"memoryTypes\":" << std::endl;
9233 PRINT_SPACE
9234 _OUT << "[" << std::endl;
9235 for (unsigned int i = 0; i < VK_MAX_MEMORY_TYPES; i++)
9236 {
9237 bool isCommaNeeded = (i + 1) != VK_MAX_MEMORY_TYPES;
9238 print_VkMemoryType(obj->memoryTypes[i], "", isCommaNeeded);
9239 }
9240 PRINT_SPACE
9241 _OUT << "]"
9242 << "," << std::endl;
9243
9244 print_uint32_t(obj->memoryHeapCount, "memoryHeapCount", 1);
9245
9246 PRINT_SPACE
9247 _OUT << "\"memoryHeaps\":" << std::endl;
9248 PRINT_SPACE
9249 _OUT << "[" << std::endl;
9250 for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++)
9251 {
9252 bool isCommaNeeded = (i + 1) != VK_MAX_MEMORY_HEAPS;
9253 print_VkMemoryHeap(obj->memoryHeaps[i], "", isCommaNeeded);
9254 }
9255 PRINT_SPACE
9256 _OUT << "]"
9257 << "" << std::endl;
9258
9259 INDENT(-4);
9260 PRINT_SPACE
9261 if (commaNeeded)
9262 _OUT << "}," << std::endl;
9263 else
9264 _OUT << "}" << std::endl;
9265 }
9266
print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj,const std::string & s,bool commaNeeded=true)9267 static void print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj, const std::string &s,
9268 bool commaNeeded = true)
9269 {
9270 PRINT_SPACE
9271 _OUT << "{" << std::endl;
9272 INDENT(4);
9273
9274 print_VkBool32(obj.residencyStandard2DBlockShape, "residencyStandard2DBlockShape", 1);
9275
9276 print_VkBool32(obj.residencyStandard2DMultisampleBlockShape, "residencyStandard2DMultisampleBlockShape", 1);
9277
9278 print_VkBool32(obj.residencyStandard3DBlockShape, "residencyStandard3DBlockShape", 1);
9279
9280 print_VkBool32(obj.residencyAlignedMipSize, "residencyAlignedMipSize", 1);
9281
9282 print_VkBool32(obj.residencyNonResidentStrict, "residencyNonResidentStrict", 0);
9283
9284 INDENT(-4);
9285 PRINT_SPACE
9286 if (commaNeeded)
9287 _OUT << "}," << std::endl;
9288 else
9289 _OUT << "}" << std::endl;
9290 }
print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * obj,const std::string & s,bool commaNeeded=true)9291 static void print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties *obj, const std::string &s,
9292 bool commaNeeded = true)
9293 {
9294 PRINT_SPACE
9295 _OUT << "{" << std::endl;
9296 INDENT(4);
9297
9298 print_VkBool32(obj->residencyStandard2DBlockShape, "residencyStandard2DBlockShape", 1);
9299
9300 print_VkBool32(obj->residencyStandard2DMultisampleBlockShape, "residencyStandard2DMultisampleBlockShape", 1);
9301
9302 print_VkBool32(obj->residencyStandard3DBlockShape, "residencyStandard3DBlockShape", 1);
9303
9304 print_VkBool32(obj->residencyAlignedMipSize, "residencyAlignedMipSize", 1);
9305
9306 print_VkBool32(obj->residencyNonResidentStrict, "residencyNonResidentStrict", 0);
9307
9308 INDENT(-4);
9309 PRINT_SPACE
9310 if (commaNeeded)
9311 _OUT << "}," << std::endl;
9312 else
9313 _OUT << "}" << std::endl;
9314 }
9315
print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj,const std::string & s,bool commaNeeded=true)9316 static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, const std::string &s,
9317 bool commaNeeded = true)
9318 {
9319 PRINT_SPACE
9320 _OUT << "{" << std::endl;
9321 INDENT(4);
9322
9323 print_uint32_t(obj.apiVersion, "apiVersion", 1);
9324
9325 print_uint32_t(obj.driverVersion, "driverVersion", 1);
9326
9327 print_uint32_t(obj.vendorID, "vendorID", 1);
9328
9329 print_uint32_t(obj.deviceID, "deviceID", 1);
9330
9331 print_VkPhysicalDeviceType(obj.deviceType, "deviceType", 1);
9332
9333 PRINT_SPACE
9334 _OUT << "\"deviceName\":" << std::endl;
9335 PRINT_SPACE
9336 _OUT << "[" << std::endl;
9337 for (unsigned int i = 0; i < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE; i++)
9338 {
9339 bool isCommaNeeded = (i + 1) != VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
9340 print_char(obj.deviceName[i], "", isCommaNeeded);
9341 }
9342 PRINT_SPACE
9343 _OUT << "]"
9344 << "," << std::endl;
9345
9346 PRINT_SPACE
9347 _OUT << "\"pipelineCacheUUID\":" << std::endl;
9348 PRINT_SPACE
9349 _OUT << "[" << std::endl;
9350 for (unsigned int i = 0; i < VK_UUID_SIZE; i++)
9351 {
9352 bool isCommaNeeded = (i + 1) != VK_UUID_SIZE;
9353 print_uint8_t(obj.pipelineCacheUUID[i], "", isCommaNeeded);
9354 }
9355 PRINT_SPACE
9356 _OUT << "]"
9357 << "," << std::endl;
9358
9359 PRINT_SPACE
9360 _OUT << "\"limits\": " << std::endl;
9361 {
9362 print_VkPhysicalDeviceLimits(obj.limits, "limits", 1);
9363 }
9364
9365 PRINT_SPACE
9366 _OUT << "\"sparseProperties\": " << std::endl;
9367 {
9368 print_VkPhysicalDeviceSparseProperties(obj.sparseProperties, "sparseProperties", 0);
9369 }
9370
9371 INDENT(-4);
9372 PRINT_SPACE
9373 if (commaNeeded)
9374 _OUT << "}," << std::endl;
9375 else
9376 _OUT << "}" << std::endl;
9377 }
print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * obj,const std::string & s,bool commaNeeded=true)9378 static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties *obj, const std::string &s,
9379 bool commaNeeded = true)
9380 {
9381 PRINT_SPACE
9382 _OUT << "{" << std::endl;
9383 INDENT(4);
9384
9385 print_uint32_t(obj->apiVersion, "apiVersion", 1);
9386
9387 print_uint32_t(obj->driverVersion, "driverVersion", 1);
9388
9389 print_uint32_t(obj->vendorID, "vendorID", 1);
9390
9391 print_uint32_t(obj->deviceID, "deviceID", 1);
9392
9393 print_VkPhysicalDeviceType(obj->deviceType, "deviceType", 1);
9394
9395 PRINT_SPACE
9396 _OUT << "\"deviceName\":" << std::endl;
9397 PRINT_SPACE
9398 _OUT << "[" << std::endl;
9399 for (unsigned int i = 0; i < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE; i++)
9400 {
9401 bool isCommaNeeded = (i + 1) != VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
9402 print_char(obj->deviceName[i], "", isCommaNeeded);
9403 }
9404 PRINT_SPACE
9405 _OUT << "]"
9406 << "," << std::endl;
9407
9408 PRINT_SPACE
9409 _OUT << "\"pipelineCacheUUID\":" << std::endl;
9410 PRINT_SPACE
9411 _OUT << "[" << std::endl;
9412 for (unsigned int i = 0; i < VK_UUID_SIZE; i++)
9413 {
9414 bool isCommaNeeded = (i + 1) != VK_UUID_SIZE;
9415 print_uint8_t(obj->pipelineCacheUUID[i], "", isCommaNeeded);
9416 }
9417 PRINT_SPACE
9418 _OUT << "]"
9419 << "," << std::endl;
9420
9421 PRINT_SPACE
9422 _OUT << "\"limits\": " << std::endl;
9423 {
9424 print_VkPhysicalDeviceLimits(obj->limits, "limits", 1);
9425 }
9426
9427 PRINT_SPACE
9428 _OUT << "\"sparseProperties\": " << std::endl;
9429 {
9430 print_VkPhysicalDeviceSparseProperties(obj->sparseProperties, "sparseProperties", 0);
9431 }
9432
9433 INDENT(-4);
9434 PRINT_SPACE
9435 if (commaNeeded)
9436 _OUT << "}," << std::endl;
9437 else
9438 _OUT << "}" << std::endl;
9439 }
9440
print_VkQueueFamilyProperties(VkQueueFamilyProperties obj,const std::string & s,bool commaNeeded=true)9441 static void print_VkQueueFamilyProperties(VkQueueFamilyProperties obj, const std::string &s, bool commaNeeded = true)
9442 {
9443 PRINT_SPACE
9444 _OUT << "{" << std::endl;
9445 INDENT(4);
9446
9447 print_VkQueueFlags(obj.queueFlags, "queueFlags", 1);
9448
9449 print_uint32_t(obj.queueCount, "queueCount", 1);
9450
9451 print_uint32_t(obj.timestampValidBits, "timestampValidBits", 1);
9452
9453 PRINT_SPACE
9454 _OUT << "\"minImageTransferGranularity\": " << std::endl;
9455 {
9456 print_VkExtent3D(obj.minImageTransferGranularity, "minImageTransferGranularity", 0);
9457 }
9458
9459 INDENT(-4);
9460 PRINT_SPACE
9461 if (commaNeeded)
9462 _OUT << "}," << std::endl;
9463 else
9464 _OUT << "}" << std::endl;
9465 }
print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj,const std::string & s,bool commaNeeded=true)9466 static void print_VkQueueFamilyProperties(const VkQueueFamilyProperties *obj, const std::string &s,
9467 bool commaNeeded = true)
9468 {
9469 PRINT_SPACE
9470 _OUT << "{" << std::endl;
9471 INDENT(4);
9472
9473 print_VkQueueFlags(obj->queueFlags, "queueFlags", 1);
9474
9475 print_uint32_t(obj->queueCount, "queueCount", 1);
9476
9477 print_uint32_t(obj->timestampValidBits, "timestampValidBits", 1);
9478
9479 PRINT_SPACE
9480 _OUT << "\"minImageTransferGranularity\": " << std::endl;
9481 {
9482 print_VkExtent3D(obj->minImageTransferGranularity, "minImageTransferGranularity", 0);
9483 }
9484
9485 INDENT(-4);
9486 PRINT_SPACE
9487 if (commaNeeded)
9488 _OUT << "}," << std::endl;
9489 else
9490 _OUT << "}" << std::endl;
9491 }
9492
print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj,const std::string & s,bool commaNeeded=true)9493 static void print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj, const std::string &s, bool commaNeeded = true)
9494 {
9495 PRINT_SPACE
9496 _OUT << "{" << std::endl;
9497 INDENT(4);
9498
9499 print_VkStructureType(obj.sType, "sType", 1);
9500
9501 if (obj.pNext)
9502 {
9503 dumpPNextChain(obj.pNext);
9504 }
9505 else
9506 {
9507 PRINT_SPACE
9508 _OUT << "\"pNext\":"
9509 << "\"NULL\""
9510 << "," << std::endl;
9511 }
9512
9513 print_VkDeviceQueueCreateFlags(obj.flags, "flags", 1);
9514
9515 print_uint32_t(obj.queueFamilyIndex, "queueFamilyIndex", 1);
9516
9517 print_uint32_t(obj.queueCount, "queueCount", 1);
9518
9519 PRINT_SPACE
9520 _OUT << "\"pQueuePriorities\":" << std::endl;
9521 PRINT_SPACE
9522 if (obj.pQueuePriorities)
9523 {
9524 _OUT << "[" << std::endl;
9525 for (unsigned int i = 0; i < obj.queueCount; i++)
9526 {
9527 bool isCommaNeeded = (i + 1) != obj.queueCount;
9528 print_float(obj.pQueuePriorities[i], "", isCommaNeeded);
9529 }
9530 PRINT_SPACE
9531 _OUT << "]"
9532 << "" << std::endl;
9533 }
9534 else
9535 {
9536 _OUT << "\"NULL\""
9537 << "" << std::endl;
9538 }
9539
9540 INDENT(-4);
9541 PRINT_SPACE
9542 if (commaNeeded)
9543 _OUT << "}," << std::endl;
9544 else
9545 _OUT << "}" << std::endl;
9546 }
print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj,const std::string & s,bool commaNeeded=true)9547 static void print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo *obj, const std::string &s,
9548 bool commaNeeded = true)
9549 {
9550 PRINT_SPACE
9551 _OUT << "{" << std::endl;
9552 INDENT(4);
9553
9554 print_VkStructureType(obj->sType, "sType", 1);
9555
9556 if (obj->pNext)
9557 {
9558 dumpPNextChain(obj->pNext);
9559 }
9560 else
9561 {
9562 PRINT_SPACE
9563 _OUT << "\"pNext\":"
9564 << "\"NULL\""
9565 << "," << std::endl;
9566 }
9567
9568 print_VkDeviceQueueCreateFlags(obj->flags, "flags", 1);
9569
9570 print_uint32_t(obj->queueFamilyIndex, "queueFamilyIndex", 1);
9571
9572 print_uint32_t(obj->queueCount, "queueCount", 1);
9573
9574 PRINT_SPACE
9575 _OUT << "\"pQueuePriorities\":" << std::endl;
9576 PRINT_SPACE
9577 if (obj->pQueuePriorities)
9578 {
9579 _OUT << "[" << std::endl;
9580 for (unsigned int i = 0; i < obj->queueCount; i++)
9581 {
9582 bool isCommaNeeded = (i + 1) != obj->queueCount;
9583 print_float(obj->pQueuePriorities[i], "", isCommaNeeded);
9584 }
9585 PRINT_SPACE
9586 _OUT << "]"
9587 << "" << std::endl;
9588 }
9589 else
9590 {
9591 _OUT << "\"NULL\""
9592 << "" << std::endl;
9593 }
9594
9595 INDENT(-4);
9596 PRINT_SPACE
9597 if (commaNeeded)
9598 _OUT << "}," << std::endl;
9599 else
9600 _OUT << "}" << std::endl;
9601 }
9602
print_VkDeviceCreateInfo(VkDeviceCreateInfo obj,const std::string & s,bool commaNeeded=true)9603 static void print_VkDeviceCreateInfo(VkDeviceCreateInfo obj, const std::string &s, bool commaNeeded = true)
9604 {
9605 PRINT_SPACE
9606 _OUT << "{" << std::endl;
9607 INDENT(4);
9608
9609 print_VkStructureType(obj.sType, "sType", 1);
9610
9611 if (obj.pNext)
9612 {
9613 dumpPNextChain(obj.pNext);
9614 }
9615 else
9616 {
9617 PRINT_SPACE
9618 _OUT << "\"pNext\":"
9619 << "\"NULL\""
9620 << "," << std::endl;
9621 }
9622
9623 print_VkDeviceCreateFlags(obj.flags, "flags", 1);
9624
9625 print_uint32_t(obj.queueCreateInfoCount, "queueCreateInfoCount", 1);
9626
9627 PRINT_SPACE
9628 _OUT << "\"pQueueCreateInfos\": " << std::endl;
9629 if (obj.pQueueCreateInfos)
9630 {
9631 PRINT_SPACE
9632 _OUT << "[" << std::endl;
9633 for (unsigned int i = 0; i < obj.queueCreateInfoCount; i++)
9634 {
9635 if (i + 1 == obj.queueCreateInfoCount)
9636 print_VkDeviceQueueCreateInfo(obj.pQueueCreateInfos[i], "pQueueCreateInfos", 0);
9637 else
9638 print_VkDeviceQueueCreateInfo(obj.pQueueCreateInfos[i], "pQueueCreateInfos", 1);
9639 }
9640 PRINT_SPACE
9641 _OUT << "]," << std::endl;
9642 }
9643 else
9644 {
9645 PRINT_SPACE _OUT << "\"NULL\""
9646 << "," << std::endl;
9647 }
9648
9649 print_uint32_t(obj.enabledLayerCount, "enabledLayerCount", 1);
9650
9651 print_char(obj.ppEnabledLayerNames, "ppEnabledLayerNames", 1);
9652
9653 print_uint32_t(obj.enabledExtensionCount, "enabledExtensionCount", 1);
9654
9655 print_char(obj.ppEnabledExtensionNames, "ppEnabledExtensionNames", 1);
9656
9657 PRINT_SPACE
9658 _OUT << "\"pEnabledFeatures\": " << std::endl;
9659 if (obj.pEnabledFeatures)
9660 {
9661 print_VkPhysicalDeviceFeatures(obj.pEnabledFeatures, "pEnabledFeatures", 0);
9662 }
9663 else
9664 {
9665 PRINT_SPACE _OUT << "\"NULL\""
9666 << "" << std::endl;
9667 }
9668
9669 INDENT(-4);
9670 PRINT_SPACE
9671 if (commaNeeded)
9672 _OUT << "}," << std::endl;
9673 else
9674 _OUT << "}" << std::endl;
9675 }
print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj,const std::string & s,bool commaNeeded=true)9676 static void print_VkDeviceCreateInfo(const VkDeviceCreateInfo *obj, const std::string &s, bool commaNeeded = true)
9677 {
9678 PRINT_SPACE
9679 _OUT << "{" << std::endl;
9680 INDENT(4);
9681
9682 print_VkStructureType(obj->sType, "sType", 1);
9683
9684 if (obj->pNext)
9685 {
9686 dumpPNextChain(obj->pNext);
9687 }
9688 else
9689 {
9690 PRINT_SPACE
9691 _OUT << "\"pNext\":"
9692 << "\"NULL\""
9693 << "," << std::endl;
9694 }
9695
9696 print_VkDeviceCreateFlags(obj->flags, "flags", 1);
9697
9698 print_uint32_t(obj->queueCreateInfoCount, "queueCreateInfoCount", 1);
9699
9700 PRINT_SPACE
9701 _OUT << "\"pQueueCreateInfos\": " << std::endl;
9702 if (obj->pQueueCreateInfos)
9703 {
9704 PRINT_SPACE
9705 _OUT << "[" << std::endl;
9706 for (unsigned int i = 0; i < obj->queueCreateInfoCount; i++)
9707 {
9708 if (i + 1 == obj->queueCreateInfoCount)
9709 print_VkDeviceQueueCreateInfo(obj->pQueueCreateInfos[i], "pQueueCreateInfos", 0);
9710 else
9711 print_VkDeviceQueueCreateInfo(obj->pQueueCreateInfos[i], "pQueueCreateInfos", 1);
9712 }
9713 PRINT_SPACE
9714 _OUT << "]," << std::endl;
9715 }
9716 else
9717 {
9718 PRINT_SPACE _OUT << "\"NULL\""
9719 << "," << std::endl;
9720 }
9721
9722 print_uint32_t(obj->enabledLayerCount, "enabledLayerCount", 1);
9723
9724 print_char(obj->ppEnabledLayerNames, "ppEnabledLayerNames", 1);
9725
9726 print_uint32_t(obj->enabledExtensionCount, "enabledExtensionCount", 1);
9727
9728 print_char(obj->ppEnabledExtensionNames, "ppEnabledExtensionNames", 1);
9729
9730 PRINT_SPACE
9731 _OUT << "\"pEnabledFeatures\": " << std::endl;
9732 if (obj->pEnabledFeatures)
9733 {
9734 print_VkPhysicalDeviceFeatures(obj->pEnabledFeatures, "pEnabledFeatures", 0);
9735 }
9736 else
9737 {
9738 PRINT_SPACE _OUT << "\"NULL\""
9739 << "" << std::endl;
9740 }
9741
9742 INDENT(-4);
9743 PRINT_SPACE
9744 if (commaNeeded)
9745 _OUT << "}," << std::endl;
9746 else
9747 _OUT << "}" << std::endl;
9748 }
9749
print_VkExtensionProperties(VkExtensionProperties obj,const std::string & s,bool commaNeeded=true)9750 static void print_VkExtensionProperties(VkExtensionProperties obj, const std::string &s, bool commaNeeded = true)
9751 {
9752 PRINT_SPACE
9753 _OUT << "{" << std::endl;
9754 INDENT(4);
9755
9756 PRINT_SPACE
9757 _OUT << "\"extensionName\":" << std::endl;
9758 PRINT_SPACE
9759 _OUT << "[" << std::endl;
9760 for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++)
9761 {
9762 bool isCommaNeeded = (i + 1) != VK_MAX_EXTENSION_NAME_SIZE;
9763 print_char(obj.extensionName[i], "", isCommaNeeded);
9764 }
9765 PRINT_SPACE
9766 _OUT << "]"
9767 << "," << std::endl;
9768
9769 print_uint32_t(obj.specVersion, "specVersion", 0);
9770
9771 INDENT(-4);
9772 PRINT_SPACE
9773 if (commaNeeded)
9774 _OUT << "}," << std::endl;
9775 else
9776 _OUT << "}" << std::endl;
9777 }
print_VkExtensionProperties(const VkExtensionProperties * obj,const std::string & s,bool commaNeeded=true)9778 static void print_VkExtensionProperties(const VkExtensionProperties *obj, const std::string &s, bool commaNeeded = true)
9779 {
9780 PRINT_SPACE
9781 _OUT << "{" << std::endl;
9782 INDENT(4);
9783
9784 PRINT_SPACE
9785 _OUT << "\"extensionName\":" << std::endl;
9786 PRINT_SPACE
9787 _OUT << "[" << std::endl;
9788 for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++)
9789 {
9790 bool isCommaNeeded = (i + 1) != VK_MAX_EXTENSION_NAME_SIZE;
9791 print_char(obj->extensionName[i], "", isCommaNeeded);
9792 }
9793 PRINT_SPACE
9794 _OUT << "]"
9795 << "," << std::endl;
9796
9797 print_uint32_t(obj->specVersion, "specVersion", 0);
9798
9799 INDENT(-4);
9800 PRINT_SPACE
9801 if (commaNeeded)
9802 _OUT << "}," << std::endl;
9803 else
9804 _OUT << "}" << std::endl;
9805 }
9806
print_VkLayerProperties(VkLayerProperties obj,const std::string & s,bool commaNeeded=true)9807 static void print_VkLayerProperties(VkLayerProperties obj, const std::string &s, bool commaNeeded = true)
9808 {
9809 PRINT_SPACE
9810 _OUT << "{" << std::endl;
9811 INDENT(4);
9812
9813 PRINT_SPACE
9814 _OUT << "\"layerName\":" << std::endl;
9815 PRINT_SPACE
9816 _OUT << "[" << std::endl;
9817 for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++)
9818 {
9819 bool isCommaNeeded = (i + 1) != VK_MAX_EXTENSION_NAME_SIZE;
9820 print_char(obj.layerName[i], "", isCommaNeeded);
9821 }
9822 PRINT_SPACE
9823 _OUT << "]"
9824 << "," << std::endl;
9825
9826 print_uint32_t(obj.specVersion, "specVersion", 1);
9827
9828 print_uint32_t(obj.implementationVersion, "implementationVersion", 1);
9829
9830 PRINT_SPACE
9831 _OUT << "\"description\":" << std::endl;
9832 PRINT_SPACE
9833 _OUT << "[" << std::endl;
9834 for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++)
9835 {
9836 bool isCommaNeeded = (i + 1) != VK_MAX_DESCRIPTION_SIZE;
9837 print_char(obj.description[i], "", isCommaNeeded);
9838 }
9839 PRINT_SPACE
9840 _OUT << "]"
9841 << "" << std::endl;
9842
9843 INDENT(-4);
9844 PRINT_SPACE
9845 if (commaNeeded)
9846 _OUT << "}," << std::endl;
9847 else
9848 _OUT << "}" << std::endl;
9849 }
print_VkLayerProperties(const VkLayerProperties * obj,const std::string & s,bool commaNeeded=true)9850 static void print_VkLayerProperties(const VkLayerProperties *obj, const std::string &s, bool commaNeeded = true)
9851 {
9852 PRINT_SPACE
9853 _OUT << "{" << std::endl;
9854 INDENT(4);
9855
9856 PRINT_SPACE
9857 _OUT << "\"layerName\":" << std::endl;
9858 PRINT_SPACE
9859 _OUT << "[" << std::endl;
9860 for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++)
9861 {
9862 bool isCommaNeeded = (i + 1) != VK_MAX_EXTENSION_NAME_SIZE;
9863 print_char(obj->layerName[i], "", isCommaNeeded);
9864 }
9865 PRINT_SPACE
9866 _OUT << "]"
9867 << "," << std::endl;
9868
9869 print_uint32_t(obj->specVersion, "specVersion", 1);
9870
9871 print_uint32_t(obj->implementationVersion, "implementationVersion", 1);
9872
9873 PRINT_SPACE
9874 _OUT << "\"description\":" << std::endl;
9875 PRINT_SPACE
9876 _OUT << "[" << std::endl;
9877 for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++)
9878 {
9879 bool isCommaNeeded = (i + 1) != VK_MAX_DESCRIPTION_SIZE;
9880 print_char(obj->description[i], "", isCommaNeeded);
9881 }
9882 PRINT_SPACE
9883 _OUT << "]"
9884 << "" << std::endl;
9885
9886 INDENT(-4);
9887 PRINT_SPACE
9888 if (commaNeeded)
9889 _OUT << "}," << std::endl;
9890 else
9891 _OUT << "}" << std::endl;
9892 }
9893
print_VkSubmitInfo(VkSubmitInfo obj,const std::string & s,bool commaNeeded=true)9894 static void print_VkSubmitInfo(VkSubmitInfo obj, const std::string &s, bool commaNeeded = true)
9895 {
9896 PRINT_SPACE
9897 _OUT << "{" << std::endl;
9898 INDENT(4);
9899
9900 print_VkStructureType(obj.sType, "sType", 1);
9901
9902 if (obj.pNext)
9903 {
9904 dumpPNextChain(obj.pNext);
9905 }
9906 else
9907 {
9908 PRINT_SPACE
9909 _OUT << "\"pNext\":"
9910 << "\"NULL\""
9911 << "," << std::endl;
9912 }
9913
9914 print_uint32_t(obj.waitSemaphoreCount, "waitSemaphoreCount", 1);
9915
9916 PRINT_SPACE
9917 _OUT << "\"pWaitSemaphores\":" << std::endl;
9918 PRINT_SPACE
9919 if (obj.pWaitSemaphores)
9920 {
9921 _OUT << "[" << std::endl;
9922 for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++)
9923 {
9924 std::stringstream tmp;
9925 tmp << "pWaitSemaphores"
9926 << "_" << i;
9927 bool isCommaNeeded = (i + 1) != obj.waitSemaphoreCount;
9928 print_VkSemaphore(obj.pWaitSemaphores[i], tmp.str(), isCommaNeeded);
9929 }
9930 PRINT_SPACE
9931 _OUT << "]"
9932 << "," << std::endl;
9933 }
9934 else
9935 {
9936 _OUT << "\"NULL\""
9937 << "," << std::endl;
9938 }
9939
9940 PRINT_SPACE
9941 _OUT << "\"pWaitDstStageMask\":" << std::endl;
9942 PRINT_SPACE
9943 if (obj.pWaitDstStageMask)
9944 {
9945 _OUT << "[" << std::endl;
9946 for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++)
9947 {
9948 bool isCommaNeeded = (i + 1) != obj.waitSemaphoreCount;
9949 print_VkPipelineStageFlags(obj.pWaitDstStageMask[i], "", isCommaNeeded);
9950 }
9951 PRINT_SPACE
9952 _OUT << "]"
9953 << "," << std::endl;
9954 }
9955 else
9956 {
9957 _OUT << "\"NULL\""
9958 << "," << std::endl;
9959 }
9960
9961 print_uint32_t(obj.commandBufferCount, "commandBufferCount", 1);
9962
9963 PRINT_SPACE
9964 _OUT << "\"pCommandBuffers\":" << std::endl;
9965 PRINT_SPACE
9966 if (obj.pCommandBuffers)
9967 {
9968 _OUT << "[" << std::endl;
9969 for (unsigned int i = 0; i < obj.commandBufferCount; i++)
9970 {
9971 std::stringstream tmp;
9972 tmp << "pCommandBuffers"
9973 << "_" << i;
9974 bool isCommaNeeded = (i + 1) != obj.commandBufferCount;
9975 print_VkCommandBuffer(obj.pCommandBuffers[i], tmp.str(), isCommaNeeded);
9976 }
9977 PRINT_SPACE
9978 _OUT << "]"
9979 << "," << std::endl;
9980 }
9981 else
9982 {
9983 _OUT << "\"NULL\""
9984 << "," << std::endl;
9985 }
9986
9987 print_uint32_t(obj.signalSemaphoreCount, "signalSemaphoreCount", 1);
9988
9989 PRINT_SPACE
9990 _OUT << "\"pSignalSemaphores\":" << std::endl;
9991 PRINT_SPACE
9992 if (obj.pSignalSemaphores)
9993 {
9994 _OUT << "[" << std::endl;
9995 for (unsigned int i = 0; i < obj.signalSemaphoreCount; i++)
9996 {
9997 std::stringstream tmp;
9998 tmp << "pSignalSemaphores"
9999 << "_" << i;
10000 bool isCommaNeeded = (i + 1) != obj.signalSemaphoreCount;
10001 print_VkSemaphore(obj.pSignalSemaphores[i], tmp.str(), isCommaNeeded);
10002 }
10003 PRINT_SPACE
10004 _OUT << "]"
10005 << "" << std::endl;
10006 }
10007 else
10008 {
10009 _OUT << "\"NULL\""
10010 << "" << std::endl;
10011 }
10012
10013 INDENT(-4);
10014 PRINT_SPACE
10015 if (commaNeeded)
10016 _OUT << "}," << std::endl;
10017 else
10018 _OUT << "}" << std::endl;
10019 }
print_VkSubmitInfo(const VkSubmitInfo * obj,const std::string & s,bool commaNeeded=true)10020 static void print_VkSubmitInfo(const VkSubmitInfo *obj, const std::string &s, bool commaNeeded = true)
10021 {
10022 PRINT_SPACE
10023 _OUT << "{" << std::endl;
10024 INDENT(4);
10025
10026 print_VkStructureType(obj->sType, "sType", 1);
10027
10028 if (obj->pNext)
10029 {
10030 dumpPNextChain(obj->pNext);
10031 }
10032 else
10033 {
10034 PRINT_SPACE
10035 _OUT << "\"pNext\":"
10036 << "\"NULL\""
10037 << "," << std::endl;
10038 }
10039
10040 print_uint32_t(obj->waitSemaphoreCount, "waitSemaphoreCount", 1);
10041
10042 PRINT_SPACE
10043 _OUT << "\"pWaitSemaphores\":" << std::endl;
10044 PRINT_SPACE
10045 if (obj->pWaitSemaphores)
10046 {
10047 _OUT << "[" << std::endl;
10048 for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++)
10049 {
10050 std::stringstream tmp;
10051 tmp << "pWaitSemaphores"
10052 << "_" << i;
10053 bool isCommaNeeded = (i + 1) != obj->waitSemaphoreCount;
10054 print_VkSemaphore(obj->pWaitSemaphores[i], tmp.str(), isCommaNeeded);
10055 }
10056 PRINT_SPACE
10057 _OUT << "]"
10058 << "," << std::endl;
10059 }
10060 else
10061 {
10062 _OUT << "\"NULL\""
10063 << "," << std::endl;
10064 }
10065
10066 PRINT_SPACE
10067 _OUT << "\"pWaitDstStageMask\":" << std::endl;
10068 PRINT_SPACE
10069 if (obj->pWaitDstStageMask)
10070 {
10071 _OUT << "[" << std::endl;
10072 for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++)
10073 {
10074 bool isCommaNeeded = (i + 1) != obj->waitSemaphoreCount;
10075 print_VkPipelineStageFlags(obj->pWaitDstStageMask[i], "", isCommaNeeded);
10076 }
10077 PRINT_SPACE
10078 _OUT << "]"
10079 << "," << std::endl;
10080 }
10081 else
10082 {
10083 _OUT << "\"NULL\""
10084 << "," << std::endl;
10085 }
10086
10087 print_uint32_t(obj->commandBufferCount, "commandBufferCount", 1);
10088
10089 PRINT_SPACE
10090 _OUT << "\"pCommandBuffers\":" << std::endl;
10091 PRINT_SPACE
10092 if (obj->pCommandBuffers)
10093 {
10094 _OUT << "[" << std::endl;
10095 for (unsigned int i = 0; i < obj->commandBufferCount; i++)
10096 {
10097 std::stringstream tmp;
10098 tmp << "pCommandBuffers"
10099 << "_" << i;
10100 bool isCommaNeeded = (i + 1) != obj->commandBufferCount;
10101 print_VkCommandBuffer(obj->pCommandBuffers[i], tmp.str(), isCommaNeeded);
10102 }
10103 PRINT_SPACE
10104 _OUT << "]"
10105 << "," << std::endl;
10106 }
10107 else
10108 {
10109 _OUT << "\"NULL\""
10110 << "," << std::endl;
10111 }
10112
10113 print_uint32_t(obj->signalSemaphoreCount, "signalSemaphoreCount", 1);
10114
10115 PRINT_SPACE
10116 _OUT << "\"pSignalSemaphores\":" << std::endl;
10117 PRINT_SPACE
10118 if (obj->pSignalSemaphores)
10119 {
10120 _OUT << "[" << std::endl;
10121 for (unsigned int i = 0; i < obj->signalSemaphoreCount; i++)
10122 {
10123 std::stringstream tmp;
10124 tmp << "pSignalSemaphores"
10125 << "_" << i;
10126 bool isCommaNeeded = (i + 1) != obj->signalSemaphoreCount;
10127 print_VkSemaphore(obj->pSignalSemaphores[i], tmp.str(), isCommaNeeded);
10128 }
10129 PRINT_SPACE
10130 _OUT << "]"
10131 << "" << std::endl;
10132 }
10133 else
10134 {
10135 _OUT << "\"NULL\""
10136 << "" << std::endl;
10137 }
10138
10139 INDENT(-4);
10140 PRINT_SPACE
10141 if (commaNeeded)
10142 _OUT << "}," << std::endl;
10143 else
10144 _OUT << "}" << std::endl;
10145 }
10146
print_VkMappedMemoryRange(VkMappedMemoryRange obj,const std::string & s,bool commaNeeded=true)10147 static void print_VkMappedMemoryRange(VkMappedMemoryRange obj, const std::string &s, bool commaNeeded = true)
10148 {
10149 PRINT_SPACE
10150 _OUT << "{" << std::endl;
10151 INDENT(4);
10152
10153 print_VkStructureType(obj.sType, "sType", 1);
10154
10155 if (obj.pNext)
10156 {
10157 dumpPNextChain(obj.pNext);
10158 }
10159 else
10160 {
10161 PRINT_SPACE
10162 _OUT << "\"pNext\":"
10163 << "\"NULL\""
10164 << "," << std::endl;
10165 }
10166
10167 // CTS : required value
10168 PRINT_SPACE _OUT << "\""
10169 << "memory"
10170 << "\""
10171 << " : "
10172 << "\""
10173 << "\"," << std::endl;
10174
10175 print_VkDeviceSize(obj.offset, "offset", 1);
10176
10177 print_VkDeviceSize(obj.size, "size", 0);
10178
10179 INDENT(-4);
10180 PRINT_SPACE
10181 if (commaNeeded)
10182 _OUT << "}," << std::endl;
10183 else
10184 _OUT << "}" << std::endl;
10185 }
print_VkMappedMemoryRange(const VkMappedMemoryRange * obj,const std::string & s,bool commaNeeded=true)10186 static void print_VkMappedMemoryRange(const VkMappedMemoryRange *obj, const std::string &s, bool commaNeeded = true)
10187 {
10188 PRINT_SPACE
10189 _OUT << "{" << std::endl;
10190 INDENT(4);
10191
10192 print_VkStructureType(obj->sType, "sType", 1);
10193
10194 if (obj->pNext)
10195 {
10196 dumpPNextChain(obj->pNext);
10197 }
10198 else
10199 {
10200 PRINT_SPACE
10201 _OUT << "\"pNext\":"
10202 << "\"NULL\""
10203 << "," << std::endl;
10204 }
10205
10206 // CTS : required value
10207 PRINT_SPACE _OUT << "\""
10208 << "memory"
10209 << "\""
10210 << " : "
10211 << "\""
10212 << "\"," << std::endl;
10213
10214 print_VkDeviceSize(obj->offset, "offset", 1);
10215
10216 print_VkDeviceSize(obj->size, "size", 0);
10217
10218 INDENT(-4);
10219 PRINT_SPACE
10220 if (commaNeeded)
10221 _OUT << "}," << std::endl;
10222 else
10223 _OUT << "}" << std::endl;
10224 }
10225
print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj,const std::string & s,bool commaNeeded=true)10226 static void print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj, const std::string &s, bool commaNeeded = true)
10227 {
10228 PRINT_SPACE
10229 _OUT << "{" << std::endl;
10230 INDENT(4);
10231
10232 print_VkStructureType(obj.sType, "sType", 1);
10233
10234 if (obj.pNext)
10235 {
10236 dumpPNextChain(obj.pNext);
10237 }
10238 else
10239 {
10240 PRINT_SPACE
10241 _OUT << "\"pNext\":"
10242 << "\"NULL\""
10243 << "," << std::endl;
10244 }
10245
10246 print_VkDeviceSize(obj.allocationSize, "allocationSize", 1);
10247
10248 print_uint32_t(obj.memoryTypeIndex, "memoryTypeIndex", 0);
10249
10250 INDENT(-4);
10251 PRINT_SPACE
10252 if (commaNeeded)
10253 _OUT << "}," << std::endl;
10254 else
10255 _OUT << "}" << std::endl;
10256 }
print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj,const std::string & s,bool commaNeeded=true)10257 static void print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo *obj, const std::string &s, bool commaNeeded = true)
10258 {
10259 PRINT_SPACE
10260 _OUT << "{" << std::endl;
10261 INDENT(4);
10262
10263 print_VkStructureType(obj->sType, "sType", 1);
10264
10265 if (obj->pNext)
10266 {
10267 dumpPNextChain(obj->pNext);
10268 }
10269 else
10270 {
10271 PRINT_SPACE
10272 _OUT << "\"pNext\":"
10273 << "\"NULL\""
10274 << "," << std::endl;
10275 }
10276
10277 print_VkDeviceSize(obj->allocationSize, "allocationSize", 1);
10278
10279 print_uint32_t(obj->memoryTypeIndex, "memoryTypeIndex", 0);
10280
10281 INDENT(-4);
10282 PRINT_SPACE
10283 if (commaNeeded)
10284 _OUT << "}," << std::endl;
10285 else
10286 _OUT << "}" << std::endl;
10287 }
10288
print_VkMemoryRequirements(VkMemoryRequirements obj,const std::string & s,bool commaNeeded=true)10289 static void print_VkMemoryRequirements(VkMemoryRequirements obj, const std::string &s, bool commaNeeded = true)
10290 {
10291 PRINT_SPACE
10292 _OUT << "{" << std::endl;
10293 INDENT(4);
10294
10295 print_VkDeviceSize(obj.size, "size", 1);
10296
10297 print_VkDeviceSize(obj.alignment, "alignment", 1);
10298
10299 print_uint32_t(obj.memoryTypeBits, "memoryTypeBits", 0);
10300
10301 INDENT(-4);
10302 PRINT_SPACE
10303 if (commaNeeded)
10304 _OUT << "}," << std::endl;
10305 else
10306 _OUT << "}" << std::endl;
10307 }
print_VkMemoryRequirements(const VkMemoryRequirements * obj,const std::string & s,bool commaNeeded=true)10308 static void print_VkMemoryRequirements(const VkMemoryRequirements *obj, const std::string &s, bool commaNeeded = true)
10309 {
10310 PRINT_SPACE
10311 _OUT << "{" << std::endl;
10312 INDENT(4);
10313
10314 print_VkDeviceSize(obj->size, "size", 1);
10315
10316 print_VkDeviceSize(obj->alignment, "alignment", 1);
10317
10318 print_uint32_t(obj->memoryTypeBits, "memoryTypeBits", 0);
10319
10320 INDENT(-4);
10321 PRINT_SPACE
10322 if (commaNeeded)
10323 _OUT << "}," << std::endl;
10324 else
10325 _OUT << "}" << std::endl;
10326 }
10327
print_VkImageSubresource(VkImageSubresource obj,const std::string & s,bool commaNeeded=true)10328 static void print_VkImageSubresource(VkImageSubresource obj, const std::string &s, bool commaNeeded = true)
10329 {
10330 PRINT_SPACE
10331 _OUT << "{" << std::endl;
10332 INDENT(4);
10333
10334 print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 1);
10335
10336 print_uint32_t(obj.mipLevel, "mipLevel", 1);
10337
10338 print_uint32_t(obj.arrayLayer, "arrayLayer", 0);
10339
10340 INDENT(-4);
10341 PRINT_SPACE
10342 if (commaNeeded)
10343 _OUT << "}," << std::endl;
10344 else
10345 _OUT << "}" << std::endl;
10346 }
print_VkImageSubresource(const VkImageSubresource * obj,const std::string & s,bool commaNeeded=true)10347 static void print_VkImageSubresource(const VkImageSubresource *obj, const std::string &s, bool commaNeeded = true)
10348 {
10349 PRINT_SPACE
10350 _OUT << "{" << std::endl;
10351 INDENT(4);
10352
10353 print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 1);
10354
10355 print_uint32_t(obj->mipLevel, "mipLevel", 1);
10356
10357 print_uint32_t(obj->arrayLayer, "arrayLayer", 0);
10358
10359 INDENT(-4);
10360 PRINT_SPACE
10361 if (commaNeeded)
10362 _OUT << "}," << std::endl;
10363 else
10364 _OUT << "}" << std::endl;
10365 }
10366
print_VkFenceCreateInfo(VkFenceCreateInfo obj,const std::string & s,bool commaNeeded=true)10367 static void print_VkFenceCreateInfo(VkFenceCreateInfo obj, const std::string &s, bool commaNeeded = true)
10368 {
10369 PRINT_SPACE
10370 _OUT << "{" << std::endl;
10371 INDENT(4);
10372
10373 print_VkStructureType(obj.sType, "sType", 1);
10374
10375 if (obj.pNext)
10376 {
10377 dumpPNextChain(obj.pNext);
10378 }
10379 else
10380 {
10381 PRINT_SPACE
10382 _OUT << "\"pNext\":"
10383 << "\"NULL\""
10384 << "," << std::endl;
10385 }
10386
10387 print_VkFenceCreateFlags(obj.flags, "flags", 0);
10388
10389 INDENT(-4);
10390 PRINT_SPACE
10391 if (commaNeeded)
10392 _OUT << "}," << std::endl;
10393 else
10394 _OUT << "}" << std::endl;
10395 }
print_VkFenceCreateInfo(const VkFenceCreateInfo * obj,const std::string & s,bool commaNeeded=true)10396 static void print_VkFenceCreateInfo(const VkFenceCreateInfo *obj, const std::string &s, bool commaNeeded = true)
10397 {
10398 PRINT_SPACE
10399 _OUT << "{" << std::endl;
10400 INDENT(4);
10401
10402 print_VkStructureType(obj->sType, "sType", 1);
10403
10404 if (obj->pNext)
10405 {
10406 dumpPNextChain(obj->pNext);
10407 }
10408 else
10409 {
10410 PRINT_SPACE
10411 _OUT << "\"pNext\":"
10412 << "\"NULL\""
10413 << "," << std::endl;
10414 }
10415
10416 print_VkFenceCreateFlags(obj->flags, "flags", 0);
10417
10418 INDENT(-4);
10419 PRINT_SPACE
10420 if (commaNeeded)
10421 _OUT << "}," << std::endl;
10422 else
10423 _OUT << "}" << std::endl;
10424 }
10425
print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj,const std::string & s,bool commaNeeded=true)10426 static void print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj, const std::string &s, bool commaNeeded = true)
10427 {
10428 PRINT_SPACE
10429 _OUT << "{" << std::endl;
10430 INDENT(4);
10431
10432 print_VkStructureType(obj.sType, "sType", 1);
10433
10434 if (obj.pNext)
10435 {
10436 dumpPNextChain(obj.pNext);
10437 }
10438 else
10439 {
10440 PRINT_SPACE
10441 _OUT << "\"pNext\":"
10442 << "\"NULL\""
10443 << "," << std::endl;
10444 }
10445
10446 print_VkSemaphoreCreateFlags(obj.flags, "flags", 0);
10447
10448 INDENT(-4);
10449 PRINT_SPACE
10450 if (commaNeeded)
10451 _OUT << "}," << std::endl;
10452 else
10453 _OUT << "}" << std::endl;
10454 }
print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj,const std::string & s,bool commaNeeded=true)10455 static void print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo *obj, const std::string &s, bool commaNeeded = true)
10456 {
10457 PRINT_SPACE
10458 _OUT << "{" << std::endl;
10459 INDENT(4);
10460
10461 print_VkStructureType(obj->sType, "sType", 1);
10462
10463 if (obj->pNext)
10464 {
10465 dumpPNextChain(obj->pNext);
10466 }
10467 else
10468 {
10469 PRINT_SPACE
10470 _OUT << "\"pNext\":"
10471 << "\"NULL\""
10472 << "," << std::endl;
10473 }
10474
10475 print_VkSemaphoreCreateFlags(obj->flags, "flags", 0);
10476
10477 INDENT(-4);
10478 PRINT_SPACE
10479 if (commaNeeded)
10480 _OUT << "}," << std::endl;
10481 else
10482 _OUT << "}" << std::endl;
10483 }
10484
print_VkEventCreateInfo(VkEventCreateInfo obj,const std::string & s,bool commaNeeded=true)10485 static void print_VkEventCreateInfo(VkEventCreateInfo obj, const std::string &s, bool commaNeeded = true)
10486 {
10487 PRINT_SPACE
10488 _OUT << "{" << std::endl;
10489 INDENT(4);
10490
10491 print_VkStructureType(obj.sType, "sType", 1);
10492
10493 if (obj.pNext)
10494 {
10495 dumpPNextChain(obj.pNext);
10496 }
10497 else
10498 {
10499 PRINT_SPACE
10500 _OUT << "\"pNext\":"
10501 << "\"NULL\""
10502 << "," << std::endl;
10503 }
10504
10505 print_VkEventCreateFlags(obj.flags, "flags", 0);
10506
10507 INDENT(-4);
10508 PRINT_SPACE
10509 if (commaNeeded)
10510 _OUT << "}," << std::endl;
10511 else
10512 _OUT << "}" << std::endl;
10513 }
print_VkEventCreateInfo(const VkEventCreateInfo * obj,const std::string & s,bool commaNeeded=true)10514 static void print_VkEventCreateInfo(const VkEventCreateInfo *obj, const std::string &s, bool commaNeeded = true)
10515 {
10516 PRINT_SPACE
10517 _OUT << "{" << std::endl;
10518 INDENT(4);
10519
10520 print_VkStructureType(obj->sType, "sType", 1);
10521
10522 if (obj->pNext)
10523 {
10524 dumpPNextChain(obj->pNext);
10525 }
10526 else
10527 {
10528 PRINT_SPACE
10529 _OUT << "\"pNext\":"
10530 << "\"NULL\""
10531 << "," << std::endl;
10532 }
10533
10534 print_VkEventCreateFlags(obj->flags, "flags", 0);
10535
10536 INDENT(-4);
10537 PRINT_SPACE
10538 if (commaNeeded)
10539 _OUT << "}," << std::endl;
10540 else
10541 _OUT << "}" << std::endl;
10542 }
10543
print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)10544 static void print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj, const std::string &s, bool commaNeeded = true)
10545 {
10546 PRINT_SPACE
10547 _OUT << "{" << std::endl;
10548 INDENT(4);
10549
10550 print_VkStructureType(obj.sType, "sType", 1);
10551
10552 if (obj.pNext)
10553 {
10554 dumpPNextChain(obj.pNext);
10555 }
10556 else
10557 {
10558 PRINT_SPACE
10559 _OUT << "\"pNext\":"
10560 << "\"NULL\""
10561 << "," << std::endl;
10562 }
10563
10564 print_VkQueryPoolCreateFlags(obj.flags, "flags", 1);
10565
10566 print_VkQueryType(obj.queryType, "queryType", 1);
10567
10568 print_uint32_t(obj.queryCount, "queryCount", 1);
10569
10570 print_VkQueryPipelineStatisticFlags(obj.pipelineStatistics, "pipelineStatistics", 0);
10571
10572 INDENT(-4);
10573 PRINT_SPACE
10574 if (commaNeeded)
10575 _OUT << "}," << std::endl;
10576 else
10577 _OUT << "}" << std::endl;
10578 }
print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)10579 static void print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo *obj, const std::string &s, bool commaNeeded = true)
10580 {
10581 PRINT_SPACE
10582 _OUT << "{" << std::endl;
10583 INDENT(4);
10584
10585 print_VkStructureType(obj->sType, "sType", 1);
10586
10587 if (obj->pNext)
10588 {
10589 dumpPNextChain(obj->pNext);
10590 }
10591 else
10592 {
10593 PRINT_SPACE
10594 _OUT << "\"pNext\":"
10595 << "\"NULL\""
10596 << "," << std::endl;
10597 }
10598
10599 print_VkQueryPoolCreateFlags(obj->flags, "flags", 1);
10600
10601 print_VkQueryType(obj->queryType, "queryType", 1);
10602
10603 print_uint32_t(obj->queryCount, "queryCount", 1);
10604
10605 print_VkQueryPipelineStatisticFlags(obj->pipelineStatistics, "pipelineStatistics", 0);
10606
10607 INDENT(-4);
10608 PRINT_SPACE
10609 if (commaNeeded)
10610 _OUT << "}," << std::endl;
10611 else
10612 _OUT << "}" << std::endl;
10613 }
10614
print_VkBufferCreateInfo(VkBufferCreateInfo obj,const std::string & s,bool commaNeeded=true)10615 static void print_VkBufferCreateInfo(VkBufferCreateInfo obj, const std::string &s, bool commaNeeded = true)
10616 {
10617 PRINT_SPACE
10618 _OUT << "{" << std::endl;
10619 INDENT(4);
10620
10621 print_VkStructureType(obj.sType, "sType", 1);
10622
10623 if (obj.pNext)
10624 {
10625 dumpPNextChain(obj.pNext);
10626 }
10627 else
10628 {
10629 PRINT_SPACE
10630 _OUT << "\"pNext\":"
10631 << "\"NULL\""
10632 << "," << std::endl;
10633 }
10634
10635 print_VkBufferCreateFlags(obj.flags, "flags", 1);
10636
10637 print_VkDeviceSize(obj.size, "size", 1);
10638
10639 print_VkBufferUsageFlags(obj.usage, "usage", 1);
10640
10641 print_VkSharingMode(obj.sharingMode, "sharingMode", 1);
10642
10643 print_uint32_t(obj.queueFamilyIndexCount, "queueFamilyIndexCount", 1);
10644
10645 PRINT_SPACE
10646 _OUT << "\"pQueueFamilyIndices\":" << std::endl;
10647 PRINT_SPACE
10648 if (obj.pQueueFamilyIndices)
10649 {
10650 _OUT << "[" << std::endl;
10651 for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++)
10652 {
10653 bool isCommaNeeded = (i + 1) != obj.queueFamilyIndexCount;
10654 print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
10655 }
10656 PRINT_SPACE
10657 _OUT << "]"
10658 << "" << std::endl;
10659 }
10660 else
10661 {
10662 _OUT << "\"NULL\""
10663 << "" << std::endl;
10664 }
10665
10666 INDENT(-4);
10667 PRINT_SPACE
10668 if (commaNeeded)
10669 _OUT << "}," << std::endl;
10670 else
10671 _OUT << "}" << std::endl;
10672 }
print_VkBufferCreateInfo(const VkBufferCreateInfo * obj,const std::string & s,bool commaNeeded=true)10673 static void print_VkBufferCreateInfo(const VkBufferCreateInfo *obj, const std::string &s, bool commaNeeded = true)
10674 {
10675 PRINT_SPACE
10676 _OUT << "{" << std::endl;
10677 INDENT(4);
10678
10679 print_VkStructureType(obj->sType, "sType", 1);
10680
10681 if (obj->pNext)
10682 {
10683 dumpPNextChain(obj->pNext);
10684 }
10685 else
10686 {
10687 PRINT_SPACE
10688 _OUT << "\"pNext\":"
10689 << "\"NULL\""
10690 << "," << std::endl;
10691 }
10692
10693 print_VkBufferCreateFlags(obj->flags, "flags", 1);
10694
10695 print_VkDeviceSize(obj->size, "size", 1);
10696
10697 print_VkBufferUsageFlags(obj->usage, "usage", 1);
10698
10699 print_VkSharingMode(obj->sharingMode, "sharingMode", 1);
10700
10701 print_uint32_t(obj->queueFamilyIndexCount, "queueFamilyIndexCount", 1);
10702
10703 PRINT_SPACE
10704 _OUT << "\"pQueueFamilyIndices\":" << std::endl;
10705 PRINT_SPACE
10706 if (obj->pQueueFamilyIndices)
10707 {
10708 _OUT << "[" << std::endl;
10709 for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++)
10710 {
10711 bool isCommaNeeded = (i + 1) != obj->queueFamilyIndexCount;
10712 print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
10713 }
10714 PRINT_SPACE
10715 _OUT << "]"
10716 << "" << std::endl;
10717 }
10718 else
10719 {
10720 _OUT << "\"NULL\""
10721 << "" << std::endl;
10722 }
10723
10724 INDENT(-4);
10725 PRINT_SPACE
10726 if (commaNeeded)
10727 _OUT << "}," << std::endl;
10728 else
10729 _OUT << "}" << std::endl;
10730 }
10731
print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj,const std::string & s,bool commaNeeded=true)10732 static void print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj, const std::string &s, bool commaNeeded = true)
10733 {
10734 PRINT_SPACE
10735 _OUT << "{" << std::endl;
10736 INDENT(4);
10737
10738 print_VkStructureType(obj.sType, "sType", 1);
10739
10740 if (obj.pNext)
10741 {
10742 dumpPNextChain(obj.pNext);
10743 }
10744 else
10745 {
10746 PRINT_SPACE
10747 _OUT << "\"pNext\":"
10748 << "\"NULL\""
10749 << "," << std::endl;
10750 }
10751
10752 print_VkBufferViewCreateFlags(obj.flags, "flags", 1);
10753
10754 // CTS : required value
10755 PRINT_SPACE _OUT << "\""
10756 << "buffer"
10757 << "\""
10758 << " : "
10759 << "\""
10760 << "\"," << std::endl;
10761
10762 print_VkFormat(obj.format, "format", 1);
10763
10764 print_VkDeviceSize(obj.offset, "offset", 1);
10765
10766 print_VkDeviceSize(obj.range, "range", 0);
10767
10768 INDENT(-4);
10769 PRINT_SPACE
10770 if (commaNeeded)
10771 _OUT << "}," << std::endl;
10772 else
10773 _OUT << "}" << std::endl;
10774 }
print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj,const std::string & s,bool commaNeeded=true)10775 static void print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo *obj, const std::string &s,
10776 bool commaNeeded = true)
10777 {
10778 PRINT_SPACE
10779 _OUT << "{" << std::endl;
10780 INDENT(4);
10781
10782 print_VkStructureType(obj->sType, "sType", 1);
10783
10784 if (obj->pNext)
10785 {
10786 dumpPNextChain(obj->pNext);
10787 }
10788 else
10789 {
10790 PRINT_SPACE
10791 _OUT << "\"pNext\":"
10792 << "\"NULL\""
10793 << "," << std::endl;
10794 }
10795
10796 print_VkBufferViewCreateFlags(obj->flags, "flags", 1);
10797
10798 // CTS : required value
10799 PRINT_SPACE _OUT << "\""
10800 << "buffer"
10801 << "\""
10802 << " : "
10803 << "\""
10804 << "\"," << std::endl;
10805
10806 print_VkFormat(obj->format, "format", 1);
10807
10808 print_VkDeviceSize(obj->offset, "offset", 1);
10809
10810 print_VkDeviceSize(obj->range, "range", 0);
10811
10812 INDENT(-4);
10813 PRINT_SPACE
10814 if (commaNeeded)
10815 _OUT << "}," << std::endl;
10816 else
10817 _OUT << "}" << std::endl;
10818 }
10819
print_VkImageCreateInfo(VkImageCreateInfo obj,const std::string & s,bool commaNeeded=true)10820 static void print_VkImageCreateInfo(VkImageCreateInfo obj, const std::string &s, bool commaNeeded = true)
10821 {
10822 PRINT_SPACE
10823 _OUT << "{" << std::endl;
10824 INDENT(4);
10825
10826 print_VkStructureType(obj.sType, "sType", 1);
10827
10828 if (obj.pNext)
10829 {
10830 dumpPNextChain(obj.pNext);
10831 }
10832 else
10833 {
10834 PRINT_SPACE
10835 _OUT << "\"pNext\":"
10836 << "\"NULL\""
10837 << "," << std::endl;
10838 }
10839
10840 print_VkImageCreateFlags(obj.flags, "flags", 1);
10841
10842 print_VkImageType(obj.imageType, "imageType", 1);
10843
10844 print_VkFormat(obj.format, "format", 1);
10845
10846 PRINT_SPACE
10847 _OUT << "\"extent\": " << std::endl;
10848 {
10849 print_VkExtent3D(obj.extent, "extent", 1);
10850 }
10851
10852 print_uint32_t(obj.mipLevels, "mipLevels", 1);
10853
10854 print_uint32_t(obj.arrayLayers, "arrayLayers", 1);
10855
10856 print_VkSampleCountFlagBits(obj.samples, "samples", 1);
10857
10858 print_VkImageTiling(obj.tiling, "tiling", 1);
10859
10860 print_VkImageUsageFlags(obj.usage, "usage", 1);
10861
10862 print_VkSharingMode(obj.sharingMode, "sharingMode", 1);
10863
10864 print_uint32_t(obj.queueFamilyIndexCount, "queueFamilyIndexCount", 1);
10865
10866 PRINT_SPACE
10867 _OUT << "\"pQueueFamilyIndices\":" << std::endl;
10868 PRINT_SPACE
10869 if (obj.pQueueFamilyIndices)
10870 {
10871 _OUT << "[" << std::endl;
10872 for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++)
10873 {
10874 bool isCommaNeeded = (i + 1) != obj.queueFamilyIndexCount;
10875 print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
10876 }
10877 PRINT_SPACE
10878 _OUT << "]"
10879 << "," << std::endl;
10880 }
10881 else
10882 {
10883 _OUT << "\"NULL\""
10884 << "," << std::endl;
10885 }
10886
10887 print_VkImageLayout(obj.initialLayout, "initialLayout", 0);
10888
10889 INDENT(-4);
10890 PRINT_SPACE
10891 if (commaNeeded)
10892 _OUT << "}," << std::endl;
10893 else
10894 _OUT << "}" << std::endl;
10895 }
print_VkImageCreateInfo(const VkImageCreateInfo * obj,const std::string & s,bool commaNeeded=true)10896 static void print_VkImageCreateInfo(const VkImageCreateInfo *obj, const std::string &s, bool commaNeeded = true)
10897 {
10898 PRINT_SPACE
10899 _OUT << "{" << std::endl;
10900 INDENT(4);
10901
10902 print_VkStructureType(obj->sType, "sType", 1);
10903
10904 if (obj->pNext)
10905 {
10906 dumpPNextChain(obj->pNext);
10907 }
10908 else
10909 {
10910 PRINT_SPACE
10911 _OUT << "\"pNext\":"
10912 << "\"NULL\""
10913 << "," << std::endl;
10914 }
10915
10916 print_VkImageCreateFlags(obj->flags, "flags", 1);
10917
10918 print_VkImageType(obj->imageType, "imageType", 1);
10919
10920 print_VkFormat(obj->format, "format", 1);
10921
10922 PRINT_SPACE
10923 _OUT << "\"extent\": " << std::endl;
10924 {
10925 print_VkExtent3D(obj->extent, "extent", 1);
10926 }
10927
10928 print_uint32_t(obj->mipLevels, "mipLevels", 1);
10929
10930 print_uint32_t(obj->arrayLayers, "arrayLayers", 1);
10931
10932 print_VkSampleCountFlagBits(obj->samples, "samples", 1);
10933
10934 print_VkImageTiling(obj->tiling, "tiling", 1);
10935
10936 print_VkImageUsageFlags(obj->usage, "usage", 1);
10937
10938 print_VkSharingMode(obj->sharingMode, "sharingMode", 1);
10939
10940 print_uint32_t(obj->queueFamilyIndexCount, "queueFamilyIndexCount", 1);
10941
10942 PRINT_SPACE
10943 _OUT << "\"pQueueFamilyIndices\":" << std::endl;
10944 PRINT_SPACE
10945 if (obj->pQueueFamilyIndices)
10946 {
10947 _OUT << "[" << std::endl;
10948 for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++)
10949 {
10950 bool isCommaNeeded = (i + 1) != obj->queueFamilyIndexCount;
10951 print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
10952 }
10953 PRINT_SPACE
10954 _OUT << "]"
10955 << "," << std::endl;
10956 }
10957 else
10958 {
10959 _OUT << "\"NULL\""
10960 << "," << std::endl;
10961 }
10962
10963 print_VkImageLayout(obj->initialLayout, "initialLayout", 0);
10964
10965 INDENT(-4);
10966 PRINT_SPACE
10967 if (commaNeeded)
10968 _OUT << "}," << std::endl;
10969 else
10970 _OUT << "}" << std::endl;
10971 }
10972
print_VkSubresourceLayout(VkSubresourceLayout obj,const std::string & s,bool commaNeeded=true)10973 static void print_VkSubresourceLayout(VkSubresourceLayout obj, const std::string &s, bool commaNeeded = true)
10974 {
10975 PRINT_SPACE
10976 _OUT << "{" << std::endl;
10977 INDENT(4);
10978
10979 print_VkDeviceSize(obj.offset, "offset", 1);
10980
10981 print_VkDeviceSize(obj.size, "size", 1);
10982
10983 print_VkDeviceSize(obj.rowPitch, "rowPitch", 1);
10984
10985 print_VkDeviceSize(obj.arrayPitch, "arrayPitch", 1);
10986
10987 print_VkDeviceSize(obj.depthPitch, "depthPitch", 0);
10988
10989 INDENT(-4);
10990 PRINT_SPACE
10991 if (commaNeeded)
10992 _OUT << "}," << std::endl;
10993 else
10994 _OUT << "}" << std::endl;
10995 }
print_VkSubresourceLayout(const VkSubresourceLayout * obj,const std::string & s,bool commaNeeded=true)10996 static void print_VkSubresourceLayout(const VkSubresourceLayout *obj, const std::string &s, bool commaNeeded = true)
10997 {
10998 PRINT_SPACE
10999 _OUT << "{" << std::endl;
11000 INDENT(4);
11001
11002 print_VkDeviceSize(obj->offset, "offset", 1);
11003
11004 print_VkDeviceSize(obj->size, "size", 1);
11005
11006 print_VkDeviceSize(obj->rowPitch, "rowPitch", 1);
11007
11008 print_VkDeviceSize(obj->arrayPitch, "arrayPitch", 1);
11009
11010 print_VkDeviceSize(obj->depthPitch, "depthPitch", 0);
11011
11012 INDENT(-4);
11013 PRINT_SPACE
11014 if (commaNeeded)
11015 _OUT << "}," << std::endl;
11016 else
11017 _OUT << "}" << std::endl;
11018 }
11019
print_VkComponentMapping(VkComponentMapping obj,const std::string & s,bool commaNeeded=true)11020 static void print_VkComponentMapping(VkComponentMapping obj, const std::string &s, bool commaNeeded = true)
11021 {
11022 PRINT_SPACE
11023 _OUT << "{" << std::endl;
11024 INDENT(4);
11025
11026 print_VkComponentSwizzle(obj.r, "r", 1);
11027
11028 print_VkComponentSwizzle(obj.g, "g", 1);
11029
11030 print_VkComponentSwizzle(obj.b, "b", 1);
11031
11032 print_VkComponentSwizzle(obj.a, "a", 0);
11033
11034 INDENT(-4);
11035 PRINT_SPACE
11036 if (commaNeeded)
11037 _OUT << "}," << std::endl;
11038 else
11039 _OUT << "}" << std::endl;
11040 }
print_VkComponentMapping(const VkComponentMapping * obj,const std::string & s,bool commaNeeded=true)11041 static void print_VkComponentMapping(const VkComponentMapping *obj, const std::string &s, bool commaNeeded = true)
11042 {
11043 PRINT_SPACE
11044 _OUT << "{" << std::endl;
11045 INDENT(4);
11046
11047 print_VkComponentSwizzle(obj->r, "r", 1);
11048
11049 print_VkComponentSwizzle(obj->g, "g", 1);
11050
11051 print_VkComponentSwizzle(obj->b, "b", 1);
11052
11053 print_VkComponentSwizzle(obj->a, "a", 0);
11054
11055 INDENT(-4);
11056 PRINT_SPACE
11057 if (commaNeeded)
11058 _OUT << "}," << std::endl;
11059 else
11060 _OUT << "}" << std::endl;
11061 }
11062
print_VkImageViewCreateInfo(VkImageViewCreateInfo obj,const std::string & s,bool commaNeeded=true)11063 static void print_VkImageViewCreateInfo(VkImageViewCreateInfo obj, const std::string &s, bool commaNeeded = true)
11064 {
11065 PRINT_SPACE
11066 _OUT << "{" << std::endl;
11067 INDENT(4);
11068
11069 print_VkStructureType(obj.sType, "sType", 1);
11070
11071 if (obj.pNext)
11072 {
11073 dumpPNextChain(obj.pNext);
11074 }
11075 else
11076 {
11077 PRINT_SPACE
11078 _OUT << "\"pNext\":"
11079 << "\"NULL\""
11080 << "," << std::endl;
11081 }
11082
11083 print_VkImageViewCreateFlags(obj.flags, "flags", 1);
11084
11085 // CTS : required value
11086 PRINT_SPACE _OUT << "\""
11087 << "image"
11088 << "\""
11089 << " : "
11090 << "\""
11091 << "\"," << std::endl;
11092
11093 print_VkImageViewType(obj.viewType, "viewType", 1);
11094
11095 print_VkFormat(obj.format, "format", 1);
11096
11097 PRINT_SPACE
11098 _OUT << "\"components\": " << std::endl;
11099 {
11100 print_VkComponentMapping(obj.components, "components", 1);
11101 }
11102
11103 PRINT_SPACE
11104 _OUT << "\"subresourceRange\": " << std::endl;
11105 {
11106 print_VkImageSubresourceRange(obj.subresourceRange, "subresourceRange", 0);
11107 }
11108
11109 INDENT(-4);
11110 PRINT_SPACE
11111 if (commaNeeded)
11112 _OUT << "}," << std::endl;
11113 else
11114 _OUT << "}" << std::endl;
11115 }
print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj,const std::string & s,bool commaNeeded=true)11116 static void print_VkImageViewCreateInfo(const VkImageViewCreateInfo *obj, const std::string &s, bool commaNeeded = true)
11117 {
11118 PRINT_SPACE
11119 _OUT << "{" << std::endl;
11120 INDENT(4);
11121
11122 print_VkStructureType(obj->sType, "sType", 1);
11123
11124 if (obj->pNext)
11125 {
11126 dumpPNextChain(obj->pNext);
11127 }
11128 else
11129 {
11130 PRINT_SPACE
11131 _OUT << "\"pNext\":"
11132 << "\"NULL\""
11133 << "," << std::endl;
11134 }
11135
11136 print_VkImageViewCreateFlags(obj->flags, "flags", 1);
11137
11138 // CTS : required value
11139 PRINT_SPACE _OUT << "\""
11140 << "image"
11141 << "\""
11142 << " : "
11143 << "\""
11144 << "\"," << std::endl;
11145
11146 print_VkImageViewType(obj->viewType, "viewType", 1);
11147
11148 print_VkFormat(obj->format, "format", 1);
11149
11150 PRINT_SPACE
11151 _OUT << "\"components\": " << std::endl;
11152 {
11153 print_VkComponentMapping(obj->components, "components", 1);
11154 }
11155
11156 PRINT_SPACE
11157 _OUT << "\"subresourceRange\": " << std::endl;
11158 {
11159 print_VkImageSubresourceRange(obj->subresourceRange, "subresourceRange", 0);
11160 }
11161
11162 INDENT(-4);
11163 PRINT_SPACE
11164 if (commaNeeded)
11165 _OUT << "}," << std::endl;
11166 else
11167 _OUT << "}" << std::endl;
11168 }
11169
print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj,const std::string & s,bool commaNeeded=true)11170 static void print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj, const std::string &s,
11171 bool commaNeeded = true)
11172 {
11173 PRINT_SPACE
11174 _OUT << "{" << std::endl;
11175 INDENT(4);
11176
11177 print_VkStructureType(obj.sType, "sType", 1);
11178
11179 if (obj.pNext)
11180 {
11181 dumpPNextChain(obj.pNext);
11182 }
11183 else
11184 {
11185 PRINT_SPACE
11186 _OUT << "\"pNext\":"
11187 << "\"NULL\""
11188 << "," << std::endl;
11189 }
11190
11191 print_VkPipelineCacheCreateFlags(obj.flags, "flags", 1);
11192
11193 print_size_t(obj.initialDataSize, "initialDataSize", 1);
11194
11195 print_void_data(obj.pInitialData, int(obj.initialDataSize), "pInitialData", 0);
11196
11197 INDENT(-4);
11198 PRINT_SPACE
11199 if (commaNeeded)
11200 _OUT << "}," << std::endl;
11201 else
11202 _OUT << "}" << std::endl;
11203 }
print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * obj,const std::string & s,bool commaNeeded=true)11204 static void print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo *obj, const std::string &s,
11205 bool commaNeeded = true)
11206 {
11207 PRINT_SPACE
11208 _OUT << "{" << std::endl;
11209 INDENT(4);
11210
11211 print_VkStructureType(obj->sType, "sType", 1);
11212
11213 if (obj->pNext)
11214 {
11215 dumpPNextChain(obj->pNext);
11216 }
11217 else
11218 {
11219 PRINT_SPACE
11220 _OUT << "\"pNext\":"
11221 << "\"NULL\""
11222 << "," << std::endl;
11223 }
11224
11225 print_VkPipelineCacheCreateFlags(obj->flags, "flags", 1);
11226
11227 print_size_t(obj->initialDataSize, "initialDataSize", 1);
11228
11229 print_void_data(obj->pInitialData, int(obj->initialDataSize), "pInitialData", 0);
11230
11231 INDENT(-4);
11232 PRINT_SPACE
11233 if (commaNeeded)
11234 _OUT << "}," << std::endl;
11235 else
11236 _OUT << "}" << std::endl;
11237 }
11238
print_VkSpecializationMapEntry(VkSpecializationMapEntry obj,const std::string & s,bool commaNeeded=true)11239 static void print_VkSpecializationMapEntry(VkSpecializationMapEntry obj, const std::string &s, bool commaNeeded = true)
11240 {
11241 PRINT_SPACE
11242 _OUT << "{" << std::endl;
11243 INDENT(4);
11244
11245 print_uint32_t(obj.constantID, "constantID", 1);
11246
11247 print_uint32_t(obj.offset, "offset", 1);
11248
11249 print_size_t(obj.size, "size", 0);
11250
11251 INDENT(-4);
11252 PRINT_SPACE
11253 if (commaNeeded)
11254 _OUT << "}," << std::endl;
11255 else
11256 _OUT << "}" << std::endl;
11257 }
print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj,const std::string & s,bool commaNeeded=true)11258 static void print_VkSpecializationMapEntry(const VkSpecializationMapEntry *obj, const std::string &s,
11259 bool commaNeeded = true)
11260 {
11261 PRINT_SPACE
11262 _OUT << "{" << std::endl;
11263 INDENT(4);
11264
11265 print_uint32_t(obj->constantID, "constantID", 1);
11266
11267 print_uint32_t(obj->offset, "offset", 1);
11268
11269 print_size_t(obj->size, "size", 0);
11270
11271 INDENT(-4);
11272 PRINT_SPACE
11273 if (commaNeeded)
11274 _OUT << "}," << std::endl;
11275 else
11276 _OUT << "}" << std::endl;
11277 }
11278
print_VkSpecializationInfo(VkSpecializationInfo obj,const std::string & s,bool commaNeeded=true)11279 static void print_VkSpecializationInfo(VkSpecializationInfo obj, const std::string &s, bool commaNeeded = true)
11280 {
11281 PRINT_SPACE
11282 _OUT << "{" << std::endl;
11283 INDENT(4);
11284
11285 print_uint32_t(obj.mapEntryCount, "mapEntryCount", 1);
11286
11287 PRINT_SPACE
11288 _OUT << "\"pMapEntries\": " << std::endl;
11289 if (obj.pMapEntries)
11290 {
11291 PRINT_SPACE
11292 _OUT << "[" << std::endl;
11293 for (unsigned int i = 0; i < obj.mapEntryCount; i++)
11294 {
11295 if (i + 1 == obj.mapEntryCount)
11296 print_VkSpecializationMapEntry(obj.pMapEntries[i], "pMapEntries", 0);
11297 else
11298 print_VkSpecializationMapEntry(obj.pMapEntries[i], "pMapEntries", 1);
11299 }
11300 PRINT_SPACE
11301 _OUT << "]," << std::endl;
11302 }
11303 else
11304 {
11305 PRINT_SPACE _OUT << "\"NULL\""
11306 << "," << std::endl;
11307 }
11308
11309 print_size_t(obj.dataSize, "dataSize", 1);
11310
11311 print_void_data(obj.pData, int(obj.dataSize), "pData", 0);
11312
11313 INDENT(-4);
11314 PRINT_SPACE
11315 if (commaNeeded)
11316 _OUT << "}," << std::endl;
11317 else
11318 _OUT << "}" << std::endl;
11319 }
print_VkSpecializationInfo(const VkSpecializationInfo * obj,const std::string & s,bool commaNeeded=true)11320 static void print_VkSpecializationInfo(const VkSpecializationInfo *obj, const std::string &s, bool commaNeeded = true)
11321 {
11322 PRINT_SPACE
11323 _OUT << "{" << std::endl;
11324 INDENT(4);
11325
11326 print_uint32_t(obj->mapEntryCount, "mapEntryCount", 1);
11327
11328 PRINT_SPACE
11329 _OUT << "\"pMapEntries\": " << std::endl;
11330 if (obj->pMapEntries)
11331 {
11332 PRINT_SPACE
11333 _OUT << "[" << std::endl;
11334 for (unsigned int i = 0; i < obj->mapEntryCount; i++)
11335 {
11336 if (i + 1 == obj->mapEntryCount)
11337 print_VkSpecializationMapEntry(obj->pMapEntries[i], "pMapEntries", 0);
11338 else
11339 print_VkSpecializationMapEntry(obj->pMapEntries[i], "pMapEntries", 1);
11340 }
11341 PRINT_SPACE
11342 _OUT << "]," << std::endl;
11343 }
11344 else
11345 {
11346 PRINT_SPACE _OUT << "\"NULL\""
11347 << "," << std::endl;
11348 }
11349
11350 print_size_t(obj->dataSize, "dataSize", 1);
11351
11352 print_void_data(obj->pData, int(obj->dataSize), "pData", 0);
11353
11354 INDENT(-4);
11355 PRINT_SPACE
11356 if (commaNeeded)
11357 _OUT << "}," << std::endl;
11358 else
11359 _OUT << "}" << std::endl;
11360 }
11361
print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj,const std::string & s,bool commaNeeded=true)11362 static void print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj, const std::string &s,
11363 bool commaNeeded = true)
11364 {
11365 PRINT_SPACE
11366 _OUT << "{" << std::endl;
11367 INDENT(4);
11368
11369 print_VkStructureType(obj.sType, "sType", 1);
11370
11371 if (obj.pNext)
11372 {
11373 dumpPNextChain(obj.pNext);
11374 }
11375 else
11376 {
11377 PRINT_SPACE
11378 _OUT << "\"pNext\":"
11379 << "\"NULL\""
11380 << "," << std::endl;
11381 }
11382
11383 print_VkPipelineShaderStageCreateFlags(obj.flags, "flags", 1);
11384
11385 print_VkShaderStageFlagBits(obj.stage, "stage", 1);
11386
11387 // CTS : required value
11388 PRINT_SPACE _OUT << "\""
11389 << "module"
11390 << "\""
11391 << " : " << obj.module.getInternal() << "," << std::endl;
11392
11393 print_char(obj.pName, "pName", 1);
11394
11395 PRINT_SPACE
11396 _OUT << "\"pSpecializationInfo\": " << std::endl;
11397 if (obj.pSpecializationInfo)
11398 {
11399 print_VkSpecializationInfo(obj.pSpecializationInfo, "pSpecializationInfo", 0);
11400 }
11401 else
11402 {
11403 PRINT_SPACE _OUT << "\"NULL\""
11404 << "" << std::endl;
11405 }
11406
11407 INDENT(-4);
11408 PRINT_SPACE
11409 if (commaNeeded)
11410 _OUT << "}," << std::endl;
11411 else
11412 _OUT << "}" << std::endl;
11413 }
print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * obj,const std::string & s,bool commaNeeded=true)11414 static void print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo *obj, const std::string &s,
11415 bool commaNeeded = true)
11416 {
11417 PRINT_SPACE
11418 _OUT << "{" << std::endl;
11419 INDENT(4);
11420
11421 print_VkStructureType(obj->sType, "sType", 1);
11422
11423 if (obj->pNext)
11424 {
11425 dumpPNextChain(obj->pNext);
11426 }
11427 else
11428 {
11429 PRINT_SPACE
11430 _OUT << "\"pNext\":"
11431 << "\"NULL\""
11432 << "," << std::endl;
11433 }
11434
11435 print_VkPipelineShaderStageCreateFlags(obj->flags, "flags", 1);
11436
11437 print_VkShaderStageFlagBits(obj->stage, "stage", 1);
11438
11439 // CTS : required value
11440 PRINT_SPACE _OUT << "\""
11441 << "module"
11442 << "\""
11443 << " : " << obj->module.getInternal() << "," << std::endl;
11444
11445 print_char(obj->pName, "pName", 1);
11446
11447 PRINT_SPACE
11448 _OUT << "\"pSpecializationInfo\": " << std::endl;
11449 if (obj->pSpecializationInfo)
11450 {
11451 print_VkSpecializationInfo(obj->pSpecializationInfo, "pSpecializationInfo", 0);
11452 }
11453 else
11454 {
11455 PRINT_SPACE _OUT << "\"NULL\""
11456 << "" << std::endl;
11457 }
11458
11459 INDENT(-4);
11460 PRINT_SPACE
11461 if (commaNeeded)
11462 _OUT << "}," << std::endl;
11463 else
11464 _OUT << "}" << std::endl;
11465 }
11466
print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj,const std::string & s,bool commaNeeded=true)11467 static void print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj, const std::string &s,
11468 bool commaNeeded = true)
11469 {
11470 PRINT_SPACE
11471 _OUT << "{" << std::endl;
11472 INDENT(4);
11473
11474 print_VkStructureType(obj.sType, "sType", 1);
11475
11476 if (obj.pNext)
11477 {
11478 dumpPNextChain(obj.pNext);
11479 }
11480 else
11481 {
11482 PRINT_SPACE
11483 _OUT << "\"pNext\":"
11484 << "\"NULL\""
11485 << "," << std::endl;
11486 }
11487
11488 print_VkPipelineCreateFlags(obj.flags, "flags", 1);
11489
11490 PRINT_SPACE
11491 _OUT << "\"stage\": " << std::endl;
11492 {
11493 print_VkPipelineShaderStageCreateInfo(obj.stage, "stage", 1);
11494 }
11495
11496 // CTS : required value
11497 PRINT_SPACE _OUT << "\""
11498 << "layout"
11499 << "\""
11500 << " : " << obj.layout.getInternal() << "," << std::endl;
11501
11502 // CTS : required value
11503 PRINT_SPACE _OUT << "\""
11504 << "basePipelineHandle"
11505 << "\""
11506 << " : "
11507 << "\""
11508 << "\"," << std::endl;
11509
11510 print_int32_t(obj.basePipelineIndex, "basePipelineIndex", 0);
11511
11512 INDENT(-4);
11513 PRINT_SPACE
11514 if (commaNeeded)
11515 _OUT << "}," << std::endl;
11516 else
11517 _OUT << "}" << std::endl;
11518 }
print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * obj,const std::string & s,bool commaNeeded=true)11519 static void print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo *obj, const std::string &s,
11520 bool commaNeeded = true)
11521 {
11522 PRINT_SPACE
11523 _OUT << "{" << std::endl;
11524 INDENT(4);
11525
11526 print_VkStructureType(obj->sType, "sType", 1);
11527
11528 if (obj->pNext)
11529 {
11530 dumpPNextChain(obj->pNext);
11531 }
11532 else
11533 {
11534 PRINT_SPACE
11535 _OUT << "\"pNext\":"
11536 << "\"NULL\""
11537 << "," << std::endl;
11538 }
11539
11540 print_VkPipelineCreateFlags(obj->flags, "flags", 1);
11541
11542 PRINT_SPACE
11543 _OUT << "\"stage\": " << std::endl;
11544 {
11545 print_VkPipelineShaderStageCreateInfo(obj->stage, "stage", 1);
11546 }
11547
11548 // CTS : required value
11549 PRINT_SPACE _OUT << "\""
11550 << "layout"
11551 << "\""
11552 << " : " << obj->layout.getInternal() << "," << std::endl;
11553
11554 // CTS : required value
11555 PRINT_SPACE _OUT << "\""
11556 << "basePipelineHandle"
11557 << "\""
11558 << " : "
11559 << "\""
11560 << "\"," << std::endl;
11561
11562 print_int32_t(obj->basePipelineIndex, "basePipelineIndex", 0);
11563
11564 INDENT(-4);
11565 PRINT_SPACE
11566 if (commaNeeded)
11567 _OUT << "}," << std::endl;
11568 else
11569 _OUT << "}" << std::endl;
11570 }
11571
print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj,const std::string & s,bool commaNeeded=true)11572 static void print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj, const std::string &s,
11573 bool commaNeeded = true)
11574 {
11575 PRINT_SPACE
11576 _OUT << "{" << std::endl;
11577 INDENT(4);
11578
11579 print_uint32_t(obj.binding, "binding", 1);
11580
11581 print_uint32_t(obj.stride, "stride", 1);
11582
11583 print_VkVertexInputRate(obj.inputRate, "inputRate", 0);
11584
11585 INDENT(-4);
11586 PRINT_SPACE
11587 if (commaNeeded)
11588 _OUT << "}," << std::endl;
11589 else
11590 _OUT << "}" << std::endl;
11591 }
print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * obj,const std::string & s,bool commaNeeded=true)11592 static void print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription *obj, const std::string &s,
11593 bool commaNeeded = true)
11594 {
11595 PRINT_SPACE
11596 _OUT << "{" << std::endl;
11597 INDENT(4);
11598
11599 print_uint32_t(obj->binding, "binding", 1);
11600
11601 print_uint32_t(obj->stride, "stride", 1);
11602
11603 print_VkVertexInputRate(obj->inputRate, "inputRate", 0);
11604
11605 INDENT(-4);
11606 PRINT_SPACE
11607 if (commaNeeded)
11608 _OUT << "}," << std::endl;
11609 else
11610 _OUT << "}" << std::endl;
11611 }
11612
print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj,const std::string & s,bool commaNeeded=true)11613 static void print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj, const std::string &s,
11614 bool commaNeeded = true)
11615 {
11616 PRINT_SPACE
11617 _OUT << "{" << std::endl;
11618 INDENT(4);
11619
11620 print_uint32_t(obj.location, "location", 1);
11621
11622 print_uint32_t(obj.binding, "binding", 1);
11623
11624 print_VkFormat(obj.format, "format", 1);
11625
11626 print_uint32_t(obj.offset, "offset", 0);
11627
11628 INDENT(-4);
11629 PRINT_SPACE
11630 if (commaNeeded)
11631 _OUT << "}," << std::endl;
11632 else
11633 _OUT << "}" << std::endl;
11634 }
print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * obj,const std::string & s,bool commaNeeded=true)11635 static void print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription *obj, const std::string &s,
11636 bool commaNeeded = true)
11637 {
11638 PRINT_SPACE
11639 _OUT << "{" << std::endl;
11640 INDENT(4);
11641
11642 print_uint32_t(obj->location, "location", 1);
11643
11644 print_uint32_t(obj->binding, "binding", 1);
11645
11646 print_VkFormat(obj->format, "format", 1);
11647
11648 print_uint32_t(obj->offset, "offset", 0);
11649
11650 INDENT(-4);
11651 PRINT_SPACE
11652 if (commaNeeded)
11653 _OUT << "}," << std::endl;
11654 else
11655 _OUT << "}" << std::endl;
11656 }
11657
print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj,const std::string & s,bool commaNeeded=true)11658 static void print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj, const std::string &s,
11659 bool commaNeeded = true)
11660 {
11661 PRINT_SPACE
11662 _OUT << "{" << std::endl;
11663 INDENT(4);
11664
11665 print_VkStructureType(obj.sType, "sType", 1);
11666
11667 if (obj.pNext)
11668 {
11669 dumpPNextChain(obj.pNext);
11670 }
11671 else
11672 {
11673 PRINT_SPACE
11674 _OUT << "\"pNext\":"
11675 << "\"NULL\""
11676 << "," << std::endl;
11677 }
11678
11679 print_VkPipelineVertexInputStateCreateFlags(obj.flags, "flags", 1);
11680
11681 print_uint32_t(obj.vertexBindingDescriptionCount, "vertexBindingDescriptionCount", 1);
11682
11683 PRINT_SPACE
11684 _OUT << "\"pVertexBindingDescriptions\": " << std::endl;
11685 if (obj.pVertexBindingDescriptions)
11686 {
11687 PRINT_SPACE
11688 _OUT << "[" << std::endl;
11689 for (unsigned int i = 0; i < obj.vertexBindingDescriptionCount; i++)
11690 {
11691 if (i + 1 == obj.vertexBindingDescriptionCount)
11692 print_VkVertexInputBindingDescription(obj.pVertexBindingDescriptions[i], "pVertexBindingDescriptions",
11693 0);
11694 else
11695 print_VkVertexInputBindingDescription(obj.pVertexBindingDescriptions[i], "pVertexBindingDescriptions",
11696 1);
11697 }
11698 PRINT_SPACE
11699 _OUT << "]," << std::endl;
11700 }
11701 else
11702 {
11703 PRINT_SPACE _OUT << "\"NULL\""
11704 << "," << std::endl;
11705 }
11706
11707 print_uint32_t(obj.vertexAttributeDescriptionCount, "vertexAttributeDescriptionCount", 1);
11708
11709 PRINT_SPACE
11710 _OUT << "\"pVertexAttributeDescriptions\": " << std::endl;
11711 if (obj.pVertexAttributeDescriptions)
11712 {
11713 PRINT_SPACE
11714 _OUT << "[" << std::endl;
11715 for (unsigned int i = 0; i < obj.vertexAttributeDescriptionCount; i++)
11716 {
11717 if (i + 1 == obj.vertexAttributeDescriptionCount)
11718 print_VkVertexInputAttributeDescription(obj.pVertexAttributeDescriptions[i],
11719 "pVertexAttributeDescriptions", 0);
11720 else
11721 print_VkVertexInputAttributeDescription(obj.pVertexAttributeDescriptions[i],
11722 "pVertexAttributeDescriptions", 1);
11723 }
11724 PRINT_SPACE
11725 _OUT << "]" << std::endl;
11726 }
11727 else
11728 {
11729 PRINT_SPACE _OUT << "\"NULL\""
11730 << "" << std::endl;
11731 }
11732
11733 INDENT(-4);
11734 PRINT_SPACE
11735 if (commaNeeded)
11736 _OUT << "}," << std::endl;
11737 else
11738 _OUT << "}" << std::endl;
11739 }
print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)11740 static void print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo *obj,
11741 const std::string &s, bool commaNeeded = true)
11742 {
11743 PRINT_SPACE
11744 _OUT << "{" << std::endl;
11745 INDENT(4);
11746
11747 print_VkStructureType(obj->sType, "sType", 1);
11748
11749 if (obj->pNext)
11750 {
11751 dumpPNextChain(obj->pNext);
11752 }
11753 else
11754 {
11755 PRINT_SPACE
11756 _OUT << "\"pNext\":"
11757 << "\"NULL\""
11758 << "," << std::endl;
11759 }
11760
11761 print_VkPipelineVertexInputStateCreateFlags(obj->flags, "flags", 1);
11762
11763 print_uint32_t(obj->vertexBindingDescriptionCount, "vertexBindingDescriptionCount", 1);
11764
11765 PRINT_SPACE
11766 _OUT << "\"pVertexBindingDescriptions\": " << std::endl;
11767 if (obj->pVertexBindingDescriptions)
11768 {
11769 PRINT_SPACE
11770 _OUT << "[" << std::endl;
11771 for (unsigned int i = 0; i < obj->vertexBindingDescriptionCount; i++)
11772 {
11773 if (i + 1 == obj->vertexBindingDescriptionCount)
11774 print_VkVertexInputBindingDescription(obj->pVertexBindingDescriptions[i], "pVertexBindingDescriptions",
11775 0);
11776 else
11777 print_VkVertexInputBindingDescription(obj->pVertexBindingDescriptions[i], "pVertexBindingDescriptions",
11778 1);
11779 }
11780 PRINT_SPACE
11781 _OUT << "]," << std::endl;
11782 }
11783 else
11784 {
11785 PRINT_SPACE _OUT << "\"NULL\""
11786 << "," << std::endl;
11787 }
11788
11789 print_uint32_t(obj->vertexAttributeDescriptionCount, "vertexAttributeDescriptionCount", 1);
11790
11791 PRINT_SPACE
11792 _OUT << "\"pVertexAttributeDescriptions\": " << std::endl;
11793 if (obj->pVertexAttributeDescriptions)
11794 {
11795 PRINT_SPACE
11796 _OUT << "[" << std::endl;
11797 for (unsigned int i = 0; i < obj->vertexAttributeDescriptionCount; i++)
11798 {
11799 if (i + 1 == obj->vertexAttributeDescriptionCount)
11800 print_VkVertexInputAttributeDescription(obj->pVertexAttributeDescriptions[i],
11801 "pVertexAttributeDescriptions", 0);
11802 else
11803 print_VkVertexInputAttributeDescription(obj->pVertexAttributeDescriptions[i],
11804 "pVertexAttributeDescriptions", 1);
11805 }
11806 PRINT_SPACE
11807 _OUT << "]" << std::endl;
11808 }
11809 else
11810 {
11811 PRINT_SPACE _OUT << "\"NULL\""
11812 << "" << std::endl;
11813 }
11814
11815 INDENT(-4);
11816 PRINT_SPACE
11817 if (commaNeeded)
11818 _OUT << "}," << std::endl;
11819 else
11820 _OUT << "}" << std::endl;
11821 }
11822
print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj,const std::string & s,bool commaNeeded=true)11823 static void print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj,
11824 const std::string &s, bool commaNeeded = true)
11825 {
11826 PRINT_SPACE
11827 _OUT << "{" << std::endl;
11828 INDENT(4);
11829
11830 print_VkStructureType(obj.sType, "sType", 1);
11831
11832 if (obj.pNext)
11833 {
11834 dumpPNextChain(obj.pNext);
11835 }
11836 else
11837 {
11838 PRINT_SPACE
11839 _OUT << "\"pNext\":"
11840 << "\"NULL\""
11841 << "," << std::endl;
11842 }
11843
11844 print_VkPipelineInputAssemblyStateCreateFlags(obj.flags, "flags", 1);
11845
11846 print_VkPrimitiveTopology(obj.topology, "topology", 1);
11847
11848 print_VkBool32(obj.primitiveRestartEnable, "primitiveRestartEnable", 0);
11849
11850 INDENT(-4);
11851 PRINT_SPACE
11852 if (commaNeeded)
11853 _OUT << "}," << std::endl;
11854 else
11855 _OUT << "}" << std::endl;
11856 }
print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)11857 static void print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo *obj,
11858 const std::string &s, bool commaNeeded = true)
11859 {
11860 PRINT_SPACE
11861 _OUT << "{" << std::endl;
11862 INDENT(4);
11863
11864 print_VkStructureType(obj->sType, "sType", 1);
11865
11866 if (obj->pNext)
11867 {
11868 dumpPNextChain(obj->pNext);
11869 }
11870 else
11871 {
11872 PRINT_SPACE
11873 _OUT << "\"pNext\":"
11874 << "\"NULL\""
11875 << "," << std::endl;
11876 }
11877
11878 print_VkPipelineInputAssemblyStateCreateFlags(obj->flags, "flags", 1);
11879
11880 print_VkPrimitiveTopology(obj->topology, "topology", 1);
11881
11882 print_VkBool32(obj->primitiveRestartEnable, "primitiveRestartEnable", 0);
11883
11884 INDENT(-4);
11885 PRINT_SPACE
11886 if (commaNeeded)
11887 _OUT << "}," << std::endl;
11888 else
11889 _OUT << "}" << std::endl;
11890 }
11891
print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj,const std::string & s,bool commaNeeded=true)11892 static void print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj, const std::string &s,
11893 bool commaNeeded = true)
11894 {
11895 PRINT_SPACE
11896 _OUT << "{" << std::endl;
11897 INDENT(4);
11898
11899 print_VkStructureType(obj.sType, "sType", 1);
11900
11901 if (obj.pNext)
11902 {
11903 dumpPNextChain(obj.pNext);
11904 }
11905 else
11906 {
11907 PRINT_SPACE
11908 _OUT << "\"pNext\":"
11909 << "\"NULL\""
11910 << "," << std::endl;
11911 }
11912
11913 print_VkPipelineTessellationStateCreateFlags(obj.flags, "flags", 1);
11914
11915 print_uint32_t(obj.patchControlPoints, "patchControlPoints", 0);
11916
11917 INDENT(-4);
11918 PRINT_SPACE
11919 if (commaNeeded)
11920 _OUT << "}," << std::endl;
11921 else
11922 _OUT << "}" << std::endl;
11923 }
print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)11924 static void print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo *obj,
11925 const std::string &s, bool commaNeeded = true)
11926 {
11927 PRINT_SPACE
11928 _OUT << "{" << std::endl;
11929 INDENT(4);
11930
11931 print_VkStructureType(obj->sType, "sType", 1);
11932
11933 if (obj->pNext)
11934 {
11935 dumpPNextChain(obj->pNext);
11936 }
11937 else
11938 {
11939 PRINT_SPACE
11940 _OUT << "\"pNext\":"
11941 << "\"NULL\""
11942 << "," << std::endl;
11943 }
11944
11945 print_VkPipelineTessellationStateCreateFlags(obj->flags, "flags", 1);
11946
11947 print_uint32_t(obj->patchControlPoints, "patchControlPoints", 0);
11948
11949 INDENT(-4);
11950 PRINT_SPACE
11951 if (commaNeeded)
11952 _OUT << "}," << std::endl;
11953 else
11954 _OUT << "}" << std::endl;
11955 }
11956
print_VkViewport(VkViewport obj,const std::string & s,bool commaNeeded=true)11957 static void print_VkViewport(VkViewport obj, const std::string &s, bool commaNeeded = true)
11958 {
11959 PRINT_SPACE
11960 _OUT << "{" << std::endl;
11961 INDENT(4);
11962
11963 print_float(obj.x, "x", 1);
11964
11965 print_float(obj.y, "y", 1);
11966
11967 print_float(obj.width, "width", 1);
11968
11969 print_float(obj.height, "height", 1);
11970
11971 print_float(obj.minDepth, "minDepth", 1);
11972
11973 print_float(obj.maxDepth, "maxDepth", 0);
11974
11975 INDENT(-4);
11976 PRINT_SPACE
11977 if (commaNeeded)
11978 _OUT << "}," << std::endl;
11979 else
11980 _OUT << "}" << std::endl;
11981 }
print_VkViewport(const VkViewport * obj,const std::string & s,bool commaNeeded=true)11982 static void print_VkViewport(const VkViewport *obj, const std::string &s, bool commaNeeded = true)
11983 {
11984 PRINT_SPACE
11985 _OUT << "{" << std::endl;
11986 INDENT(4);
11987
11988 print_float(obj->x, "x", 1);
11989
11990 print_float(obj->y, "y", 1);
11991
11992 print_float(obj->width, "width", 1);
11993
11994 print_float(obj->height, "height", 1);
11995
11996 print_float(obj->minDepth, "minDepth", 1);
11997
11998 print_float(obj->maxDepth, "maxDepth", 0);
11999
12000 INDENT(-4);
12001 PRINT_SPACE
12002 if (commaNeeded)
12003 _OUT << "}," << std::endl;
12004 else
12005 _OUT << "}" << std::endl;
12006 }
12007
print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj,const std::string & s,bool commaNeeded=true)12008 static void print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj, const std::string &s,
12009 bool commaNeeded = true)
12010 {
12011 PRINT_SPACE
12012 _OUT << "{" << std::endl;
12013 INDENT(4);
12014
12015 print_VkStructureType(obj.sType, "sType", 1);
12016
12017 if (obj.pNext)
12018 {
12019 dumpPNextChain(obj.pNext);
12020 }
12021 else
12022 {
12023 PRINT_SPACE
12024 _OUT << "\"pNext\":"
12025 << "\"NULL\""
12026 << "," << std::endl;
12027 }
12028
12029 print_VkPipelineViewportStateCreateFlags(obj.flags, "flags", 1);
12030
12031 print_uint32_t(obj.viewportCount, "viewportCount", 1);
12032
12033 PRINT_SPACE
12034 _OUT << "\"pViewports\": " << std::endl;
12035 if (obj.pViewports)
12036 {
12037 PRINT_SPACE
12038 _OUT << "[" << std::endl;
12039 for (unsigned int i = 0; i < obj.viewportCount; i++)
12040 {
12041 if (i + 1 == obj.viewportCount)
12042 print_VkViewport(obj.pViewports[i], "pViewports", 0);
12043 else
12044 print_VkViewport(obj.pViewports[i], "pViewports", 1);
12045 }
12046 PRINT_SPACE
12047 _OUT << "]," << std::endl;
12048 }
12049 else
12050 {
12051 PRINT_SPACE _OUT << "\"NULL\""
12052 << "," << std::endl;
12053 }
12054
12055 print_uint32_t(obj.scissorCount, "scissorCount", 1);
12056
12057 PRINT_SPACE
12058 _OUT << "\"pScissors\": " << std::endl;
12059 if (obj.pScissors)
12060 {
12061 PRINT_SPACE
12062 _OUT << "[" << std::endl;
12063 for (unsigned int i = 0; i < obj.scissorCount; i++)
12064 {
12065 if (i + 1 == obj.scissorCount)
12066 print_VkRect2D(obj.pScissors[i], "pScissors", 0);
12067 else
12068 print_VkRect2D(obj.pScissors[i], "pScissors", 1);
12069 }
12070 PRINT_SPACE
12071 _OUT << "]" << std::endl;
12072 }
12073 else
12074 {
12075 PRINT_SPACE _OUT << "\"NULL\""
12076 << "" << std::endl;
12077 }
12078
12079 INDENT(-4);
12080 PRINT_SPACE
12081 if (commaNeeded)
12082 _OUT << "}," << std::endl;
12083 else
12084 _OUT << "}" << std::endl;
12085 }
print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)12086 static void print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo *obj, const std::string &s,
12087 bool commaNeeded = true)
12088 {
12089 PRINT_SPACE
12090 _OUT << "{" << std::endl;
12091 INDENT(4);
12092
12093 print_VkStructureType(obj->sType, "sType", 1);
12094
12095 if (obj->pNext)
12096 {
12097 dumpPNextChain(obj->pNext);
12098 }
12099 else
12100 {
12101 PRINT_SPACE
12102 _OUT << "\"pNext\":"
12103 << "\"NULL\""
12104 << "," << std::endl;
12105 }
12106
12107 print_VkPipelineViewportStateCreateFlags(obj->flags, "flags", 1);
12108
12109 print_uint32_t(obj->viewportCount, "viewportCount", 1);
12110
12111 PRINT_SPACE
12112 _OUT << "\"pViewports\": " << std::endl;
12113 if (obj->pViewports)
12114 {
12115 PRINT_SPACE
12116 _OUT << "[" << std::endl;
12117 for (unsigned int i = 0; i < obj->viewportCount; i++)
12118 {
12119 if (i + 1 == obj->viewportCount)
12120 print_VkViewport(obj->pViewports[i], "pViewports", 0);
12121 else
12122 print_VkViewport(obj->pViewports[i], "pViewports", 1);
12123 }
12124 PRINT_SPACE
12125 _OUT << "]," << std::endl;
12126 }
12127 else
12128 {
12129 PRINT_SPACE _OUT << "\"NULL\""
12130 << "," << std::endl;
12131 }
12132
12133 print_uint32_t(obj->scissorCount, "scissorCount", 1);
12134
12135 PRINT_SPACE
12136 _OUT << "\"pScissors\": " << std::endl;
12137 if (obj->pScissors)
12138 {
12139 PRINT_SPACE
12140 _OUT << "[" << std::endl;
12141 for (unsigned int i = 0; i < obj->scissorCount; i++)
12142 {
12143 if (i + 1 == obj->scissorCount)
12144 print_VkRect2D(obj->pScissors[i], "pScissors", 0);
12145 else
12146 print_VkRect2D(obj->pScissors[i], "pScissors", 1);
12147 }
12148 PRINT_SPACE
12149 _OUT << "]" << std::endl;
12150 }
12151 else
12152 {
12153 PRINT_SPACE _OUT << "\"NULL\""
12154 << "" << std::endl;
12155 }
12156
12157 INDENT(-4);
12158 PRINT_SPACE
12159 if (commaNeeded)
12160 _OUT << "}," << std::endl;
12161 else
12162 _OUT << "}" << std::endl;
12163 }
12164
print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj,const std::string & s,bool commaNeeded=true)12165 static void print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj,
12166 const std::string &s, bool commaNeeded = true)
12167 {
12168 PRINT_SPACE
12169 _OUT << "{" << std::endl;
12170 INDENT(4);
12171
12172 print_VkStructureType(obj.sType, "sType", 1);
12173
12174 if (obj.pNext)
12175 {
12176 dumpPNextChain(obj.pNext);
12177 }
12178 else
12179 {
12180 PRINT_SPACE
12181 _OUT << "\"pNext\":"
12182 << "\"NULL\""
12183 << "," << std::endl;
12184 }
12185
12186 print_VkPipelineRasterizationStateCreateFlags(obj.flags, "flags", 1);
12187
12188 print_VkBool32(obj.depthClampEnable, "depthClampEnable", 1);
12189
12190 print_VkBool32(obj.rasterizerDiscardEnable, "rasterizerDiscardEnable", 1);
12191
12192 print_VkPolygonMode(obj.polygonMode, "polygonMode", 1);
12193
12194 print_VkCullModeFlags(obj.cullMode, "cullMode", 1);
12195
12196 print_VkFrontFace(obj.frontFace, "frontFace", 1);
12197
12198 print_VkBool32(obj.depthBiasEnable, "depthBiasEnable", 1);
12199
12200 print_float(obj.depthBiasConstantFactor, "depthBiasConstantFactor", 1);
12201
12202 print_float(obj.depthBiasClamp, "depthBiasClamp", 1);
12203
12204 print_float(obj.depthBiasSlopeFactor, "depthBiasSlopeFactor", 1);
12205
12206 print_float(obj.lineWidth, "lineWidth", 0);
12207
12208 INDENT(-4);
12209 PRINT_SPACE
12210 if (commaNeeded)
12211 _OUT << "}," << std::endl;
12212 else
12213 _OUT << "}" << std::endl;
12214 }
print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)12215 static void print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo *obj,
12216 const std::string &s, bool commaNeeded = true)
12217 {
12218 PRINT_SPACE
12219 _OUT << "{" << std::endl;
12220 INDENT(4);
12221
12222 print_VkStructureType(obj->sType, "sType", 1);
12223
12224 if (obj->pNext)
12225 {
12226 dumpPNextChain(obj->pNext);
12227 }
12228 else
12229 {
12230 PRINT_SPACE
12231 _OUT << "\"pNext\":"
12232 << "\"NULL\""
12233 << "," << std::endl;
12234 }
12235
12236 print_VkPipelineRasterizationStateCreateFlags(obj->flags, "flags", 1);
12237
12238 print_VkBool32(obj->depthClampEnable, "depthClampEnable", 1);
12239
12240 print_VkBool32(obj->rasterizerDiscardEnable, "rasterizerDiscardEnable", 1);
12241
12242 print_VkPolygonMode(obj->polygonMode, "polygonMode", 1);
12243
12244 print_VkCullModeFlags(obj->cullMode, "cullMode", 1);
12245
12246 print_VkFrontFace(obj->frontFace, "frontFace", 1);
12247
12248 print_VkBool32(obj->depthBiasEnable, "depthBiasEnable", 1);
12249
12250 print_float(obj->depthBiasConstantFactor, "depthBiasConstantFactor", 1);
12251
12252 print_float(obj->depthBiasClamp, "depthBiasClamp", 1);
12253
12254 print_float(obj->depthBiasSlopeFactor, "depthBiasSlopeFactor", 1);
12255
12256 print_float(obj->lineWidth, "lineWidth", 0);
12257
12258 INDENT(-4);
12259 PRINT_SPACE
12260 if (commaNeeded)
12261 _OUT << "}," << std::endl;
12262 else
12263 _OUT << "}" << std::endl;
12264 }
12265
print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj,const std::string & s,bool commaNeeded=true)12266 static void print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj, const std::string &s,
12267 bool commaNeeded = true)
12268 {
12269 PRINT_SPACE
12270 _OUT << "{" << std::endl;
12271 INDENT(4);
12272
12273 print_VkStructureType(obj.sType, "sType", 1);
12274
12275 if (obj.pNext)
12276 {
12277 dumpPNextChain(obj.pNext);
12278 }
12279 else
12280 {
12281 PRINT_SPACE
12282 _OUT << "\"pNext\":"
12283 << "\"NULL\""
12284 << "," << std::endl;
12285 }
12286
12287 print_VkPipelineMultisampleStateCreateFlags(obj.flags, "flags", 1);
12288
12289 print_VkSampleCountFlagBits(obj.rasterizationSamples, "rasterizationSamples", 1);
12290
12291 print_VkBool32(obj.sampleShadingEnable, "sampleShadingEnable", 1);
12292
12293 print_float(obj.minSampleShading, "minSampleShading", 1);
12294
12295 uint32_t sampleMaskSize = ((obj.rasterizationSamples + 31) / 32);
12296 PRINT_SPACE
12297 _OUT << "\"pSampleMask\":" << std::endl;
12298 PRINT_SPACE
12299 if (obj.pSampleMask)
12300 {
12301 _OUT << "[" << std::endl;
12302 for (unsigned int i = 0; i < sampleMaskSize; i++)
12303 {
12304 bool isCommaNeeded = (i + 1) != sampleMaskSize;
12305 print_uint32_t(obj.pSampleMask[i], "", isCommaNeeded);
12306 }
12307 PRINT_SPACE
12308 _OUT << "]"
12309 << "," << std::endl;
12310 }
12311 else
12312 {
12313 _OUT << "\"NULL\""
12314 << "," << std::endl;
12315 }
12316
12317 print_VkBool32(obj.alphaToCoverageEnable, "alphaToCoverageEnable", 1);
12318
12319 print_VkBool32(obj.alphaToOneEnable, "alphaToOneEnable", 0);
12320
12321 INDENT(-4);
12322 PRINT_SPACE
12323 if (commaNeeded)
12324 _OUT << "}," << std::endl;
12325 else
12326 _OUT << "}" << std::endl;
12327 }
print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)12328 static void print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo *obj,
12329 const std::string &s, bool commaNeeded = true)
12330 {
12331 PRINT_SPACE
12332 _OUT << "{" << std::endl;
12333 INDENT(4);
12334
12335 print_VkStructureType(obj->sType, "sType", 1);
12336
12337 if (obj->pNext)
12338 {
12339 dumpPNextChain(obj->pNext);
12340 }
12341 else
12342 {
12343 PRINT_SPACE
12344 _OUT << "\"pNext\":"
12345 << "\"NULL\""
12346 << "," << std::endl;
12347 }
12348
12349 print_VkPipelineMultisampleStateCreateFlags(obj->flags, "flags", 1);
12350
12351 print_VkSampleCountFlagBits(obj->rasterizationSamples, "rasterizationSamples", 1);
12352
12353 print_VkBool32(obj->sampleShadingEnable, "sampleShadingEnable", 1);
12354
12355 print_float(obj->minSampleShading, "minSampleShading", 1);
12356
12357 uint32_t sampleMaskSize = ((obj->rasterizationSamples + 31) / 32);
12358 PRINT_SPACE
12359 _OUT << "\"pSampleMask\":" << std::endl;
12360 PRINT_SPACE
12361 if (obj->pSampleMask)
12362 {
12363 _OUT << "[" << std::endl;
12364 for (unsigned int i = 0; i < sampleMaskSize; i++)
12365 {
12366 bool isCommaNeeded = (i + 1) != sampleMaskSize;
12367 print_uint32_t(obj->pSampleMask[i], "", isCommaNeeded);
12368 }
12369 PRINT_SPACE
12370 _OUT << "]"
12371 << "," << std::endl;
12372 }
12373 else
12374 {
12375 _OUT << "\"NULL\""
12376 << "," << std::endl;
12377 }
12378
12379 print_VkBool32(obj->alphaToCoverageEnable, "alphaToCoverageEnable", 1);
12380
12381 print_VkBool32(obj->alphaToOneEnable, "alphaToOneEnable", 0);
12382
12383 INDENT(-4);
12384 PRINT_SPACE
12385 if (commaNeeded)
12386 _OUT << "}," << std::endl;
12387 else
12388 _OUT << "}" << std::endl;
12389 }
12390
print_VkStencilOpState(VkStencilOpState obj,const std::string & s,bool commaNeeded=true)12391 static void print_VkStencilOpState(VkStencilOpState obj, const std::string &s, bool commaNeeded = true)
12392 {
12393 PRINT_SPACE
12394 _OUT << "{" << std::endl;
12395 INDENT(4);
12396
12397 print_VkStencilOp(obj.failOp, "failOp", 1);
12398
12399 print_VkStencilOp(obj.passOp, "passOp", 1);
12400
12401 print_VkStencilOp(obj.depthFailOp, "depthFailOp", 1);
12402
12403 print_VkCompareOp(obj.compareOp, "compareOp", 1);
12404
12405 print_uint32_t(obj.compareMask, "compareMask", 1);
12406
12407 print_uint32_t(obj.writeMask, "writeMask", 1);
12408
12409 print_uint32_t(obj.reference, "reference", 0);
12410
12411 INDENT(-4);
12412 PRINT_SPACE
12413 if (commaNeeded)
12414 _OUT << "}," << std::endl;
12415 else
12416 _OUT << "}" << std::endl;
12417 }
print_VkStencilOpState(const VkStencilOpState * obj,const std::string & s,bool commaNeeded=true)12418 static void print_VkStencilOpState(const VkStencilOpState *obj, const std::string &s, bool commaNeeded = true)
12419 {
12420 PRINT_SPACE
12421 _OUT << "{" << std::endl;
12422 INDENT(4);
12423
12424 print_VkStencilOp(obj->failOp, "failOp", 1);
12425
12426 print_VkStencilOp(obj->passOp, "passOp", 1);
12427
12428 print_VkStencilOp(obj->depthFailOp, "depthFailOp", 1);
12429
12430 print_VkCompareOp(obj->compareOp, "compareOp", 1);
12431
12432 print_uint32_t(obj->compareMask, "compareMask", 1);
12433
12434 print_uint32_t(obj->writeMask, "writeMask", 1);
12435
12436 print_uint32_t(obj->reference, "reference", 0);
12437
12438 INDENT(-4);
12439 PRINT_SPACE
12440 if (commaNeeded)
12441 _OUT << "}," << std::endl;
12442 else
12443 _OUT << "}" << std::endl;
12444 }
12445
print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj,const std::string & s,bool commaNeeded=true)12446 static void print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj, const std::string &s,
12447 bool commaNeeded = true)
12448 {
12449 PRINT_SPACE
12450 _OUT << "{" << std::endl;
12451 INDENT(4);
12452
12453 print_VkStructureType(obj.sType, "sType", 1);
12454
12455 if (obj.pNext)
12456 {
12457 dumpPNextChain(obj.pNext);
12458 }
12459 else
12460 {
12461 PRINT_SPACE
12462 _OUT << "\"pNext\":"
12463 << "\"NULL\""
12464 << "," << std::endl;
12465 }
12466
12467 print_VkPipelineDepthStencilStateCreateFlags(obj.flags, "flags", 1);
12468
12469 print_VkBool32(obj.depthTestEnable, "depthTestEnable", 1);
12470
12471 print_VkBool32(obj.depthWriteEnable, "depthWriteEnable", 1);
12472
12473 print_VkCompareOp(obj.depthCompareOp, "depthCompareOp", 1);
12474
12475 print_VkBool32(obj.depthBoundsTestEnable, "depthBoundsTestEnable", 1);
12476
12477 print_VkBool32(obj.stencilTestEnable, "stencilTestEnable", 1);
12478
12479 PRINT_SPACE
12480 _OUT << "\"front\": " << std::endl;
12481 {
12482 print_VkStencilOpState(obj.front, "front", 1);
12483 }
12484
12485 PRINT_SPACE
12486 _OUT << "\"back\": " << std::endl;
12487 {
12488 print_VkStencilOpState(obj.back, "back", 1);
12489 }
12490
12491 print_float(obj.minDepthBounds, "minDepthBounds", 1);
12492
12493 print_float(obj.maxDepthBounds, "maxDepthBounds", 0);
12494
12495 INDENT(-4);
12496 PRINT_SPACE
12497 if (commaNeeded)
12498 _OUT << "}," << std::endl;
12499 else
12500 _OUT << "}" << std::endl;
12501 }
print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)12502 static void print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo *obj,
12503 const std::string &s, bool commaNeeded = true)
12504 {
12505 PRINT_SPACE
12506 _OUT << "{" << std::endl;
12507 INDENT(4);
12508
12509 print_VkStructureType(obj->sType, "sType", 1);
12510
12511 if (obj->pNext)
12512 {
12513 dumpPNextChain(obj->pNext);
12514 }
12515 else
12516 {
12517 PRINT_SPACE
12518 _OUT << "\"pNext\":"
12519 << "\"NULL\""
12520 << "," << std::endl;
12521 }
12522
12523 print_VkPipelineDepthStencilStateCreateFlags(obj->flags, "flags", 1);
12524
12525 print_VkBool32(obj->depthTestEnable, "depthTestEnable", 1);
12526
12527 print_VkBool32(obj->depthWriteEnable, "depthWriteEnable", 1);
12528
12529 print_VkCompareOp(obj->depthCompareOp, "depthCompareOp", 1);
12530
12531 print_VkBool32(obj->depthBoundsTestEnable, "depthBoundsTestEnable", 1);
12532
12533 print_VkBool32(obj->stencilTestEnable, "stencilTestEnable", 1);
12534
12535 PRINT_SPACE
12536 _OUT << "\"front\": " << std::endl;
12537 {
12538 print_VkStencilOpState(obj->front, "front", 1);
12539 }
12540
12541 PRINT_SPACE
12542 _OUT << "\"back\": " << std::endl;
12543 {
12544 print_VkStencilOpState(obj->back, "back", 1);
12545 }
12546
12547 print_float(obj->minDepthBounds, "minDepthBounds", 1);
12548
12549 print_float(obj->maxDepthBounds, "maxDepthBounds", 0);
12550
12551 INDENT(-4);
12552 PRINT_SPACE
12553 if (commaNeeded)
12554 _OUT << "}," << std::endl;
12555 else
12556 _OUT << "}" << std::endl;
12557 }
12558
print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj,const std::string & s,bool commaNeeded=true)12559 static void print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj, const std::string &s,
12560 bool commaNeeded = true)
12561 {
12562 PRINT_SPACE
12563 _OUT << "{" << std::endl;
12564 INDENT(4);
12565
12566 print_VkBool32(obj.blendEnable, "blendEnable", 1);
12567
12568 print_VkBlendFactor(obj.srcColorBlendFactor, "srcColorBlendFactor", 1);
12569
12570 print_VkBlendFactor(obj.dstColorBlendFactor, "dstColorBlendFactor", 1);
12571
12572 print_VkBlendOp(obj.colorBlendOp, "colorBlendOp", 1);
12573
12574 print_VkBlendFactor(obj.srcAlphaBlendFactor, "srcAlphaBlendFactor", 1);
12575
12576 print_VkBlendFactor(obj.dstAlphaBlendFactor, "dstAlphaBlendFactor", 1);
12577
12578 print_VkBlendOp(obj.alphaBlendOp, "alphaBlendOp", 1);
12579
12580 print_VkColorComponentFlags(obj.colorWriteMask, "colorWriteMask", 0);
12581
12582 INDENT(-4);
12583 PRINT_SPACE
12584 if (commaNeeded)
12585 _OUT << "}," << std::endl;
12586 else
12587 _OUT << "}" << std::endl;
12588 }
print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * obj,const std::string & s,bool commaNeeded=true)12589 static void print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState *obj,
12590 const std::string &s, bool commaNeeded = true)
12591 {
12592 PRINT_SPACE
12593 _OUT << "{" << std::endl;
12594 INDENT(4);
12595
12596 print_VkBool32(obj->blendEnable, "blendEnable", 1);
12597
12598 print_VkBlendFactor(obj->srcColorBlendFactor, "srcColorBlendFactor", 1);
12599
12600 print_VkBlendFactor(obj->dstColorBlendFactor, "dstColorBlendFactor", 1);
12601
12602 print_VkBlendOp(obj->colorBlendOp, "colorBlendOp", 1);
12603
12604 print_VkBlendFactor(obj->srcAlphaBlendFactor, "srcAlphaBlendFactor", 1);
12605
12606 print_VkBlendFactor(obj->dstAlphaBlendFactor, "dstAlphaBlendFactor", 1);
12607
12608 print_VkBlendOp(obj->alphaBlendOp, "alphaBlendOp", 1);
12609
12610 print_VkColorComponentFlags(obj->colorWriteMask, "colorWriteMask", 0);
12611
12612 INDENT(-4);
12613 PRINT_SPACE
12614 if (commaNeeded)
12615 _OUT << "}," << std::endl;
12616 else
12617 _OUT << "}" << std::endl;
12618 }
12619
print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj,const std::string & s,bool commaNeeded=true)12620 static void print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj, const std::string &s,
12621 bool commaNeeded = true)
12622 {
12623 PRINT_SPACE
12624 _OUT << "{" << std::endl;
12625 INDENT(4);
12626
12627 print_VkStructureType(obj.sType, "sType", 1);
12628
12629 if (obj.pNext)
12630 {
12631 dumpPNextChain(obj.pNext);
12632 }
12633 else
12634 {
12635 PRINT_SPACE
12636 _OUT << "\"pNext\":"
12637 << "\"NULL\""
12638 << "," << std::endl;
12639 }
12640
12641 print_VkPipelineColorBlendStateCreateFlags(obj.flags, "flags", 1);
12642
12643 print_VkBool32(obj.logicOpEnable, "logicOpEnable", 1);
12644
12645 print_VkLogicOp(obj.logicOp, "logicOp", 1);
12646
12647 print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
12648
12649 PRINT_SPACE
12650 _OUT << "\"pAttachments\": " << std::endl;
12651 if (obj.pAttachments)
12652 {
12653 PRINT_SPACE
12654 _OUT << "[" << std::endl;
12655 for (unsigned int i = 0; i < obj.attachmentCount; i++)
12656 {
12657 if (i + 1 == obj.attachmentCount)
12658 print_VkPipelineColorBlendAttachmentState(obj.pAttachments[i], "pAttachments", 0);
12659 else
12660 print_VkPipelineColorBlendAttachmentState(obj.pAttachments[i], "pAttachments", 1);
12661 }
12662 PRINT_SPACE
12663 _OUT << "]," << std::endl;
12664 }
12665 else
12666 {
12667 PRINT_SPACE _OUT << "\"NULL\""
12668 << "," << std::endl;
12669 }
12670
12671 PRINT_SPACE
12672 _OUT << "\"blendConstants\":" << std::endl;
12673 PRINT_SPACE
12674 _OUT << "[" << std::endl;
12675 for (unsigned int i = 0; i < 4; i++)
12676 {
12677 bool isCommaNeeded = (i + 1) != 4;
12678 print_float(obj.blendConstants[i], "", isCommaNeeded);
12679 }
12680 PRINT_SPACE
12681 _OUT << "]"
12682 << "" << std::endl;
12683
12684 INDENT(-4);
12685 PRINT_SPACE
12686 if (commaNeeded)
12687 _OUT << "}," << std::endl;
12688 else
12689 _OUT << "}" << std::endl;
12690 }
print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)12691 static void print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo *obj,
12692 const std::string &s, bool commaNeeded = true)
12693 {
12694 PRINT_SPACE
12695 _OUT << "{" << std::endl;
12696 INDENT(4);
12697
12698 print_VkStructureType(obj->sType, "sType", 1);
12699
12700 if (obj->pNext)
12701 {
12702 dumpPNextChain(obj->pNext);
12703 }
12704 else
12705 {
12706 PRINT_SPACE
12707 _OUT << "\"pNext\":"
12708 << "\"NULL\""
12709 << "," << std::endl;
12710 }
12711
12712 print_VkPipelineColorBlendStateCreateFlags(obj->flags, "flags", 1);
12713
12714 print_VkBool32(obj->logicOpEnable, "logicOpEnable", 1);
12715
12716 print_VkLogicOp(obj->logicOp, "logicOp", 1);
12717
12718 print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
12719
12720 PRINT_SPACE
12721 _OUT << "\"pAttachments\": " << std::endl;
12722 if (obj->pAttachments)
12723 {
12724 PRINT_SPACE
12725 _OUT << "[" << std::endl;
12726 for (unsigned int i = 0; i < obj->attachmentCount; i++)
12727 {
12728 if (i + 1 == obj->attachmentCount)
12729 print_VkPipelineColorBlendAttachmentState(obj->pAttachments[i], "pAttachments", 0);
12730 else
12731 print_VkPipelineColorBlendAttachmentState(obj->pAttachments[i], "pAttachments", 1);
12732 }
12733 PRINT_SPACE
12734 _OUT << "]," << std::endl;
12735 }
12736 else
12737 {
12738 PRINT_SPACE _OUT << "\"NULL\""
12739 << "," << std::endl;
12740 }
12741
12742 PRINT_SPACE
12743 _OUT << "\"blendConstants\":" << std::endl;
12744 PRINT_SPACE
12745 _OUT << "[" << std::endl;
12746 for (unsigned int i = 0; i < 4; i++)
12747 {
12748 bool isCommaNeeded = (i + 1) != 4;
12749 print_float(obj->blendConstants[i], "", isCommaNeeded);
12750 }
12751 PRINT_SPACE
12752 _OUT << "]"
12753 << "" << std::endl;
12754
12755 INDENT(-4);
12756 PRINT_SPACE
12757 if (commaNeeded)
12758 _OUT << "}," << std::endl;
12759 else
12760 _OUT << "}" << std::endl;
12761 }
12762
print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj,const std::string & s,bool commaNeeded=true)12763 static void print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj, const std::string &s,
12764 bool commaNeeded = true)
12765 {
12766 PRINT_SPACE
12767 _OUT << "{" << std::endl;
12768 INDENT(4);
12769
12770 print_VkStructureType(obj.sType, "sType", 1);
12771
12772 if (obj.pNext)
12773 {
12774 dumpPNextChain(obj.pNext);
12775 }
12776 else
12777 {
12778 PRINT_SPACE
12779 _OUT << "\"pNext\":"
12780 << "\"NULL\""
12781 << "," << std::endl;
12782 }
12783
12784 print_VkPipelineDynamicStateCreateFlags(obj.flags, "flags", 1);
12785
12786 print_uint32_t(obj.dynamicStateCount, "dynamicStateCount", 1);
12787
12788 PRINT_SPACE
12789 _OUT << "\"pDynamicStates\":" << std::endl;
12790 PRINT_SPACE
12791 if (obj.pDynamicStates)
12792 {
12793 _OUT << "[" << std::endl;
12794 for (unsigned int i = 0; i < obj.dynamicStateCount; i++)
12795 {
12796 bool isCommaNeeded = (i + 1) != obj.dynamicStateCount;
12797 print_VkDynamicState(obj.pDynamicStates[i], "", isCommaNeeded);
12798 }
12799 PRINT_SPACE
12800 _OUT << "]"
12801 << "" << std::endl;
12802 }
12803 else
12804 {
12805 _OUT << "\"NULL\""
12806 << "" << std::endl;
12807 }
12808
12809 INDENT(-4);
12810 PRINT_SPACE
12811 if (commaNeeded)
12812 _OUT << "}," << std::endl;
12813 else
12814 _OUT << "}" << std::endl;
12815 }
print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)12816 static void print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo *obj, const std::string &s,
12817 bool commaNeeded = true)
12818 {
12819 PRINT_SPACE
12820 _OUT << "{" << std::endl;
12821 INDENT(4);
12822
12823 print_VkStructureType(obj->sType, "sType", 1);
12824
12825 if (obj->pNext)
12826 {
12827 dumpPNextChain(obj->pNext);
12828 }
12829 else
12830 {
12831 PRINT_SPACE
12832 _OUT << "\"pNext\":"
12833 << "\"NULL\""
12834 << "," << std::endl;
12835 }
12836
12837 print_VkPipelineDynamicStateCreateFlags(obj->flags, "flags", 1);
12838
12839 print_uint32_t(obj->dynamicStateCount, "dynamicStateCount", 1);
12840
12841 PRINT_SPACE
12842 _OUT << "\"pDynamicStates\":" << std::endl;
12843 PRINT_SPACE
12844 if (obj->pDynamicStates)
12845 {
12846 _OUT << "[" << std::endl;
12847 for (unsigned int i = 0; i < obj->dynamicStateCount; i++)
12848 {
12849 bool isCommaNeeded = (i + 1) != obj->dynamicStateCount;
12850 print_VkDynamicState(obj->pDynamicStates[i], "", isCommaNeeded);
12851 }
12852 PRINT_SPACE
12853 _OUT << "]"
12854 << "" << std::endl;
12855 }
12856 else
12857 {
12858 _OUT << "\"NULL\""
12859 << "" << std::endl;
12860 }
12861
12862 INDENT(-4);
12863 PRINT_SPACE
12864 if (commaNeeded)
12865 _OUT << "}," << std::endl;
12866 else
12867 _OUT << "}" << std::endl;
12868 }
12869
print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj,const std::string & s,bool commaNeeded=true)12870 static void print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj, const std::string &s,
12871 bool commaNeeded = true)
12872 {
12873 PRINT_SPACE
12874 _OUT << "{" << std::endl;
12875 INDENT(4);
12876
12877 print_VkStructureType(obj.sType, "sType", 1);
12878
12879 if (obj.pNext)
12880 {
12881 dumpPNextChain(obj.pNext);
12882 }
12883 else
12884 {
12885 PRINT_SPACE
12886 _OUT << "\"pNext\":"
12887 << "\"NULL\""
12888 << "," << std::endl;
12889 }
12890
12891 print_VkPipelineCreateFlags(obj.flags, "flags", 1);
12892
12893 print_uint32_t(obj.stageCount, "stageCount", 1);
12894
12895 PRINT_SPACE
12896 _OUT << "\"pStages\": " << std::endl;
12897 if (obj.pStages)
12898 {
12899 PRINT_SPACE
12900 _OUT << "[" << std::endl;
12901 for (unsigned int i = 0; i < obj.stageCount; i++)
12902 {
12903 if (i + 1 == obj.stageCount)
12904 print_VkPipelineShaderStageCreateInfo(obj.pStages[i], "pStages", 0);
12905 else
12906 print_VkPipelineShaderStageCreateInfo(obj.pStages[i], "pStages", 1);
12907 }
12908 PRINT_SPACE
12909 _OUT << "]," << std::endl;
12910 }
12911 else
12912 {
12913 PRINT_SPACE _OUT << "\"NULL\""
12914 << "," << std::endl;
12915 }
12916
12917 PRINT_SPACE
12918 _OUT << "\"pVertexInputState\": " << std::endl;
12919 if (obj.pVertexInputState)
12920 {
12921 print_VkPipelineVertexInputStateCreateInfo(obj.pVertexInputState, "pVertexInputState", 1);
12922 }
12923 else
12924 {
12925 PRINT_SPACE _OUT << "\"NULL\""
12926 << "," << std::endl;
12927 }
12928
12929 PRINT_SPACE
12930 _OUT << "\"pInputAssemblyState\": " << std::endl;
12931 if (obj.pInputAssemblyState)
12932 {
12933 print_VkPipelineInputAssemblyStateCreateInfo(obj.pInputAssemblyState, "pInputAssemblyState", 1);
12934 }
12935 else
12936 {
12937 PRINT_SPACE _OUT << "\"NULL\""
12938 << "," << std::endl;
12939 }
12940
12941 PRINT_SPACE
12942 _OUT << "\"pTessellationState\": " << std::endl;
12943 if (obj.pTessellationState)
12944 {
12945 print_VkPipelineTessellationStateCreateInfo(obj.pTessellationState, "pTessellationState", 1);
12946 }
12947 else
12948 {
12949 PRINT_SPACE _OUT << "\"NULL\""
12950 << "," << std::endl;
12951 }
12952
12953 PRINT_SPACE
12954 _OUT << "\"pViewportState\": " << std::endl;
12955 if (obj.pViewportState)
12956 {
12957 print_VkPipelineViewportStateCreateInfo(obj.pViewportState, "pViewportState", 1);
12958 }
12959 else
12960 {
12961 PRINT_SPACE _OUT << "\"NULL\""
12962 << "," << std::endl;
12963 }
12964
12965 PRINT_SPACE
12966 _OUT << "\"pRasterizationState\": " << std::endl;
12967 if (obj.pRasterizationState)
12968 {
12969 print_VkPipelineRasterizationStateCreateInfo(obj.pRasterizationState, "pRasterizationState", 1);
12970 }
12971 else
12972 {
12973 PRINT_SPACE _OUT << "\"NULL\""
12974 << "," << std::endl;
12975 }
12976
12977 PRINT_SPACE
12978 _OUT << "\"pMultisampleState\": " << std::endl;
12979 if (obj.pMultisampleState)
12980 {
12981 print_VkPipelineMultisampleStateCreateInfo(obj.pMultisampleState, "pMultisampleState", 1);
12982 }
12983 else
12984 {
12985 PRINT_SPACE _OUT << "\"NULL\""
12986 << "," << std::endl;
12987 }
12988
12989 PRINT_SPACE
12990 _OUT << "\"pDepthStencilState\": " << std::endl;
12991 if (obj.pDepthStencilState)
12992 {
12993 print_VkPipelineDepthStencilStateCreateInfo(obj.pDepthStencilState, "pDepthStencilState", 1);
12994 }
12995 else
12996 {
12997 PRINT_SPACE _OUT << "\"NULL\""
12998 << "," << std::endl;
12999 }
13000
13001 PRINT_SPACE
13002 _OUT << "\"pColorBlendState\": " << std::endl;
13003 if (obj.pColorBlendState)
13004 {
13005 print_VkPipelineColorBlendStateCreateInfo(obj.pColorBlendState, "pColorBlendState", 1);
13006 }
13007 else
13008 {
13009 PRINT_SPACE _OUT << "\"NULL\""
13010 << "," << std::endl;
13011 }
13012
13013 PRINT_SPACE
13014 _OUT << "\"pDynamicState\": " << std::endl;
13015 if (obj.pDynamicState)
13016 {
13017 print_VkPipelineDynamicStateCreateInfo(obj.pDynamicState, "pDynamicState", 1);
13018 }
13019 else
13020 {
13021 PRINT_SPACE _OUT << "\"NULL\""
13022 << "," << std::endl;
13023 }
13024
13025 // CTS : required value
13026 PRINT_SPACE _OUT << "\""
13027 << "layout"
13028 << "\""
13029 << " : " << obj.layout.getInternal() << "," << std::endl;
13030
13031 // CTS : required value
13032 PRINT_SPACE _OUT << "\""
13033 << "renderPass"
13034 << "\""
13035 << " : " << obj.renderPass.getInternal() << "," << std::endl;
13036
13037 print_uint32_t(obj.subpass, "subpass", 1);
13038
13039 // CTS : required value
13040 PRINT_SPACE _OUT << "\""
13041 << "basePipelineHandle"
13042 << "\""
13043 << " : "
13044 << "\""
13045 << "\"," << std::endl;
13046
13047 print_int32_t(obj.basePipelineIndex, "basePipelineIndex", 0);
13048
13049 INDENT(-4);
13050 PRINT_SPACE
13051 if (commaNeeded)
13052 _OUT << "}," << std::endl;
13053 else
13054 _OUT << "}" << std::endl;
13055 }
print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * obj,const std::string & s,bool commaNeeded=true)13056 static void print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo *obj, const std::string &s,
13057 bool commaNeeded = true)
13058 {
13059 PRINT_SPACE
13060 _OUT << "{" << std::endl;
13061 INDENT(4);
13062
13063 print_VkStructureType(obj->sType, "sType", 1);
13064
13065 if (obj->pNext)
13066 {
13067 dumpPNextChain(obj->pNext);
13068 }
13069 else
13070 {
13071 PRINT_SPACE
13072 _OUT << "\"pNext\":"
13073 << "\"NULL\""
13074 << "," << std::endl;
13075 }
13076
13077 print_VkPipelineCreateFlags(obj->flags, "flags", 1);
13078
13079 print_uint32_t(obj->stageCount, "stageCount", 1);
13080
13081 PRINT_SPACE
13082 _OUT << "\"pStages\": " << std::endl;
13083 if (obj->pStages)
13084 {
13085 PRINT_SPACE
13086 _OUT << "[" << std::endl;
13087 for (unsigned int i = 0; i < obj->stageCount; i++)
13088 {
13089 if (i + 1 == obj->stageCount)
13090 print_VkPipelineShaderStageCreateInfo(obj->pStages[i], "pStages", 0);
13091 else
13092 print_VkPipelineShaderStageCreateInfo(obj->pStages[i], "pStages", 1);
13093 }
13094 PRINT_SPACE
13095 _OUT << "]," << std::endl;
13096 }
13097 else
13098 {
13099 PRINT_SPACE _OUT << "\"NULL\""
13100 << "," << std::endl;
13101 }
13102
13103 PRINT_SPACE
13104 _OUT << "\"pVertexInputState\": " << std::endl;
13105 if (obj->pVertexInputState)
13106 {
13107 print_VkPipelineVertexInputStateCreateInfo(obj->pVertexInputState, "pVertexInputState", 1);
13108 }
13109 else
13110 {
13111 PRINT_SPACE _OUT << "\"NULL\""
13112 << "," << std::endl;
13113 }
13114
13115 PRINT_SPACE
13116 _OUT << "\"pInputAssemblyState\": " << std::endl;
13117 if (obj->pInputAssemblyState)
13118 {
13119 print_VkPipelineInputAssemblyStateCreateInfo(obj->pInputAssemblyState, "pInputAssemblyState", 1);
13120 }
13121 else
13122 {
13123 PRINT_SPACE _OUT << "\"NULL\""
13124 << "," << std::endl;
13125 }
13126
13127 PRINT_SPACE
13128 _OUT << "\"pTessellationState\": " << std::endl;
13129 if (obj->pTessellationState)
13130 {
13131 print_VkPipelineTessellationStateCreateInfo(obj->pTessellationState, "pTessellationState", 1);
13132 }
13133 else
13134 {
13135 PRINT_SPACE _OUT << "\"NULL\""
13136 << "," << std::endl;
13137 }
13138
13139 PRINT_SPACE
13140 _OUT << "\"pViewportState\": " << std::endl;
13141 if (obj->pViewportState)
13142 {
13143 print_VkPipelineViewportStateCreateInfo(obj->pViewportState, "pViewportState", 1);
13144 }
13145 else
13146 {
13147 PRINT_SPACE _OUT << "\"NULL\""
13148 << "," << std::endl;
13149 }
13150
13151 PRINT_SPACE
13152 _OUT << "\"pRasterizationState\": " << std::endl;
13153 if (obj->pRasterizationState)
13154 {
13155 print_VkPipelineRasterizationStateCreateInfo(obj->pRasterizationState, "pRasterizationState", 1);
13156 }
13157 else
13158 {
13159 PRINT_SPACE _OUT << "\"NULL\""
13160 << "," << std::endl;
13161 }
13162
13163 PRINT_SPACE
13164 _OUT << "\"pMultisampleState\": " << std::endl;
13165 if (obj->pMultisampleState)
13166 {
13167 print_VkPipelineMultisampleStateCreateInfo(obj->pMultisampleState, "pMultisampleState", 1);
13168 }
13169 else
13170 {
13171 PRINT_SPACE _OUT << "\"NULL\""
13172 << "," << std::endl;
13173 }
13174
13175 PRINT_SPACE
13176 _OUT << "\"pDepthStencilState\": " << std::endl;
13177 if (obj->pDepthStencilState)
13178 {
13179 print_VkPipelineDepthStencilStateCreateInfo(obj->pDepthStencilState, "pDepthStencilState", 1);
13180 }
13181 else
13182 {
13183 PRINT_SPACE _OUT << "\"NULL\""
13184 << "," << std::endl;
13185 }
13186
13187 PRINT_SPACE
13188 _OUT << "\"pColorBlendState\": " << std::endl;
13189 if (obj->pColorBlendState)
13190 {
13191 print_VkPipelineColorBlendStateCreateInfo(obj->pColorBlendState, "pColorBlendState", 1);
13192 }
13193 else
13194 {
13195 PRINT_SPACE _OUT << "\"NULL\""
13196 << "," << std::endl;
13197 }
13198
13199 PRINT_SPACE
13200 _OUT << "\"pDynamicState\": " << std::endl;
13201 if (obj->pDynamicState)
13202 {
13203 print_VkPipelineDynamicStateCreateInfo(obj->pDynamicState, "pDynamicState", 1);
13204 }
13205 else
13206 {
13207 PRINT_SPACE _OUT << "\"NULL\""
13208 << "," << std::endl;
13209 }
13210
13211 // CTS : required value
13212 PRINT_SPACE _OUT << "\""
13213 << "layout"
13214 << "\""
13215 << " : " << obj->layout.getInternal() << "," << std::endl;
13216
13217 // CTS : required value
13218 PRINT_SPACE _OUT << "\""
13219 << "renderPass"
13220 << "\""
13221 << " : " << obj->renderPass.getInternal() << "," << std::endl;
13222
13223 print_uint32_t(obj->subpass, "subpass", 1);
13224
13225 // CTS : required value
13226 PRINT_SPACE _OUT << "\""
13227 << "basePipelineHandle"
13228 << "\""
13229 << " : "
13230 << "\""
13231 << "\"," << std::endl;
13232
13233 print_int32_t(obj->basePipelineIndex, "basePipelineIndex", 0);
13234
13235 INDENT(-4);
13236 PRINT_SPACE
13237 if (commaNeeded)
13238 _OUT << "}," << std::endl;
13239 else
13240 _OUT << "}" << std::endl;
13241 }
13242
print_VkPushConstantRange(VkPushConstantRange obj,const std::string & s,bool commaNeeded=true)13243 static void print_VkPushConstantRange(VkPushConstantRange obj, const std::string &s, bool commaNeeded = true)
13244 {
13245 PRINT_SPACE
13246 _OUT << "{" << std::endl;
13247 INDENT(4);
13248
13249 print_VkShaderStageFlags(obj.stageFlags, "stageFlags", 1);
13250
13251 print_uint32_t(obj.offset, "offset", 1);
13252
13253 print_uint32_t(obj.size, "size", 0);
13254
13255 INDENT(-4);
13256 PRINT_SPACE
13257 if (commaNeeded)
13258 _OUT << "}," << std::endl;
13259 else
13260 _OUT << "}" << std::endl;
13261 }
print_VkPushConstantRange(const VkPushConstantRange * obj,const std::string & s,bool commaNeeded=true)13262 static void print_VkPushConstantRange(const VkPushConstantRange *obj, const std::string &s, bool commaNeeded = true)
13263 {
13264 PRINT_SPACE
13265 _OUT << "{" << std::endl;
13266 INDENT(4);
13267
13268 print_VkShaderStageFlags(obj->stageFlags, "stageFlags", 1);
13269
13270 print_uint32_t(obj->offset, "offset", 1);
13271
13272 print_uint32_t(obj->size, "size", 0);
13273
13274 INDENT(-4);
13275 PRINT_SPACE
13276 if (commaNeeded)
13277 _OUT << "}," << std::endl;
13278 else
13279 _OUT << "}" << std::endl;
13280 }
13281
print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj,const std::string & s,bool commaNeeded=true)13282 static void print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj, const std::string &s,
13283 bool commaNeeded = true)
13284 {
13285 PRINT_SPACE
13286 _OUT << "{" << std::endl;
13287 INDENT(4);
13288
13289 print_VkStructureType(obj.sType, "sType", 1);
13290
13291 if (obj.pNext)
13292 {
13293 dumpPNextChain(obj.pNext);
13294 }
13295 else
13296 {
13297 PRINT_SPACE
13298 _OUT << "\"pNext\":"
13299 << "\"NULL\""
13300 << "," << std::endl;
13301 }
13302
13303 print_VkPipelineLayoutCreateFlags(obj.flags, "flags", 1);
13304
13305 print_uint32_t(obj.setLayoutCount, "setLayoutCount", 1);
13306
13307 PRINT_SPACE
13308 _OUT << "\"pSetLayouts\":" << std::endl;
13309 PRINT_SPACE
13310 if (obj.pSetLayouts)
13311 {
13312 _OUT << "[" << std::endl;
13313 for (unsigned int i = 0; i < obj.setLayoutCount; i++)
13314 {
13315 bool isCommaNeeded = (i + 1) != obj.setLayoutCount;
13316 if (isCommaNeeded)
13317 {
13318 PRINT_SPACE
13319 _OUT << obj.pSetLayouts[i].getInternal() << "," << std::endl;
13320 }
13321 else
13322 {
13323 PRINT_SPACE
13324 _OUT << obj.pSetLayouts[i].getInternal() << std::endl;
13325 }
13326 }
13327 PRINT_SPACE
13328 _OUT << "]"
13329 << "," << std::endl;
13330 }
13331 else
13332 {
13333 _OUT << "\"NULL\""
13334 << "," << std::endl;
13335 }
13336
13337 print_uint32_t(obj.pushConstantRangeCount, "pushConstantRangeCount", 1);
13338
13339 PRINT_SPACE
13340 _OUT << "\"pPushConstantRanges\": " << std::endl;
13341 if (obj.pPushConstantRanges)
13342 {
13343 PRINT_SPACE
13344 _OUT << "[" << std::endl;
13345 for (unsigned int i = 0; i < obj.pushConstantRangeCount; i++)
13346 {
13347 if (i + 1 == obj.pushConstantRangeCount)
13348 print_VkPushConstantRange(obj.pPushConstantRanges[i], "pPushConstantRanges", 0);
13349 else
13350 print_VkPushConstantRange(obj.pPushConstantRanges[i], "pPushConstantRanges", 1);
13351 }
13352 PRINT_SPACE
13353 _OUT << "]" << std::endl;
13354 }
13355 else
13356 {
13357 PRINT_SPACE _OUT << "\"NULL\""
13358 << "" << std::endl;
13359 }
13360
13361 INDENT(-4);
13362 PRINT_SPACE
13363 if (commaNeeded)
13364 _OUT << "}," << std::endl;
13365 else
13366 _OUT << "}" << std::endl;
13367 }
print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * obj,const std::string & s,bool commaNeeded=true)13368 static void print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo *obj, const std::string &s,
13369 bool commaNeeded = true)
13370 {
13371 PRINT_SPACE
13372 _OUT << "{" << std::endl;
13373 INDENT(4);
13374
13375 print_VkStructureType(obj->sType, "sType", 1);
13376
13377 if (obj->pNext)
13378 {
13379 dumpPNextChain(obj->pNext);
13380 }
13381 else
13382 {
13383 PRINT_SPACE
13384 _OUT << "\"pNext\":"
13385 << "\"NULL\""
13386 << "," << std::endl;
13387 }
13388
13389 print_VkPipelineLayoutCreateFlags(obj->flags, "flags", 1);
13390
13391 print_uint32_t(obj->setLayoutCount, "setLayoutCount", 1);
13392
13393 PRINT_SPACE
13394 _OUT << "\"pSetLayouts\":" << std::endl;
13395 PRINT_SPACE
13396 if (obj->pSetLayouts)
13397 {
13398 _OUT << "[" << std::endl;
13399 for (unsigned int i = 0; i < obj->setLayoutCount; i++)
13400 {
13401 bool isCommaNeeded = (i + 1) != obj->setLayoutCount;
13402 if (isCommaNeeded)
13403 {
13404 PRINT_SPACE
13405 _OUT << obj->pSetLayouts[i].getInternal() << "," << std::endl;
13406 }
13407 else
13408 {
13409 PRINT_SPACE
13410 _OUT << obj->pSetLayouts[i].getInternal() << std::endl;
13411 }
13412 }
13413 PRINT_SPACE
13414 _OUT << "]"
13415 << "," << std::endl;
13416 }
13417 else
13418 {
13419 _OUT << "\"NULL\""
13420 << "," << std::endl;
13421 }
13422
13423 print_uint32_t(obj->pushConstantRangeCount, "pushConstantRangeCount", 1);
13424
13425 PRINT_SPACE
13426 _OUT << "\"pPushConstantRanges\": " << std::endl;
13427 if (obj->pPushConstantRanges)
13428 {
13429 PRINT_SPACE
13430 _OUT << "[" << std::endl;
13431 for (unsigned int i = 0; i < obj->pushConstantRangeCount; i++)
13432 {
13433 if (i + 1 == obj->pushConstantRangeCount)
13434 print_VkPushConstantRange(obj->pPushConstantRanges[i], "pPushConstantRanges", 0);
13435 else
13436 print_VkPushConstantRange(obj->pPushConstantRanges[i], "pPushConstantRanges", 1);
13437 }
13438 PRINT_SPACE
13439 _OUT << "]" << std::endl;
13440 }
13441 else
13442 {
13443 PRINT_SPACE _OUT << "\"NULL\""
13444 << "" << std::endl;
13445 }
13446
13447 INDENT(-4);
13448 PRINT_SPACE
13449 if (commaNeeded)
13450 _OUT << "}," << std::endl;
13451 else
13452 _OUT << "}" << std::endl;
13453 }
13454
print_VkSamplerCreateInfo(VkSamplerCreateInfo obj,const std::string & s,bool commaNeeded=true)13455 static void print_VkSamplerCreateInfo(VkSamplerCreateInfo obj, const std::string &s, bool commaNeeded = true)
13456 {
13457 PRINT_SPACE
13458 _OUT << "{" << std::endl;
13459 INDENT(4);
13460
13461 print_VkStructureType(obj.sType, "sType", 1);
13462
13463 if (obj.pNext)
13464 {
13465 dumpPNextChain(obj.pNext);
13466 }
13467 else
13468 {
13469 PRINT_SPACE
13470 _OUT << "\"pNext\":"
13471 << "\"NULL\""
13472 << "," << std::endl;
13473 }
13474
13475 print_VkSamplerCreateFlags(obj.flags, "flags", 1);
13476
13477 print_VkFilter(obj.magFilter, "magFilter", 1);
13478
13479 print_VkFilter(obj.minFilter, "minFilter", 1);
13480
13481 print_VkSamplerMipmapMode(obj.mipmapMode, "mipmapMode", 1);
13482
13483 print_VkSamplerAddressMode(obj.addressModeU, "addressModeU", 1);
13484
13485 print_VkSamplerAddressMode(obj.addressModeV, "addressModeV", 1);
13486
13487 print_VkSamplerAddressMode(obj.addressModeW, "addressModeW", 1);
13488
13489 print_float(obj.mipLodBias, "mipLodBias", 1);
13490
13491 print_VkBool32(obj.anisotropyEnable, "anisotropyEnable", 1);
13492
13493 print_float(obj.maxAnisotropy, "maxAnisotropy", 1);
13494
13495 print_VkBool32(obj.compareEnable, "compareEnable", 1);
13496
13497 print_VkCompareOp(obj.compareOp, "compareOp", 1);
13498
13499 print_float(obj.minLod, "minLod", 1);
13500
13501 print_float(obj.maxLod, "maxLod", 1);
13502
13503 print_VkBorderColor(obj.borderColor, "borderColor", 1);
13504
13505 print_VkBool32(obj.unnormalizedCoordinates, "unnormalizedCoordinates", 0);
13506
13507 INDENT(-4);
13508 PRINT_SPACE
13509 if (commaNeeded)
13510 _OUT << "}," << std::endl;
13511 else
13512 _OUT << "}" << std::endl;
13513 }
print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj,const std::string & s,bool commaNeeded=true)13514 static void print_VkSamplerCreateInfo(const VkSamplerCreateInfo *obj, const std::string &s, bool commaNeeded = true)
13515 {
13516 PRINT_SPACE
13517 _OUT << "{" << std::endl;
13518 INDENT(4);
13519
13520 print_VkStructureType(obj->sType, "sType", 1);
13521
13522 if (obj->pNext)
13523 {
13524 dumpPNextChain(obj->pNext);
13525 }
13526 else
13527 {
13528 PRINT_SPACE
13529 _OUT << "\"pNext\":"
13530 << "\"NULL\""
13531 << "," << std::endl;
13532 }
13533
13534 print_VkSamplerCreateFlags(obj->flags, "flags", 1);
13535
13536 print_VkFilter(obj->magFilter, "magFilter", 1);
13537
13538 print_VkFilter(obj->minFilter, "minFilter", 1);
13539
13540 print_VkSamplerMipmapMode(obj->mipmapMode, "mipmapMode", 1);
13541
13542 print_VkSamplerAddressMode(obj->addressModeU, "addressModeU", 1);
13543
13544 print_VkSamplerAddressMode(obj->addressModeV, "addressModeV", 1);
13545
13546 print_VkSamplerAddressMode(obj->addressModeW, "addressModeW", 1);
13547
13548 print_float(obj->mipLodBias, "mipLodBias", 1);
13549
13550 print_VkBool32(obj->anisotropyEnable, "anisotropyEnable", 1);
13551
13552 print_float(obj->maxAnisotropy, "maxAnisotropy", 1);
13553
13554 print_VkBool32(obj->compareEnable, "compareEnable", 1);
13555
13556 print_VkCompareOp(obj->compareOp, "compareOp", 1);
13557
13558 print_float(obj->minLod, "minLod", 1);
13559
13560 print_float(obj->maxLod, "maxLod", 1);
13561
13562 print_VkBorderColor(obj->borderColor, "borderColor", 1);
13563
13564 print_VkBool32(obj->unnormalizedCoordinates, "unnormalizedCoordinates", 0);
13565
13566 INDENT(-4);
13567 PRINT_SPACE
13568 if (commaNeeded)
13569 _OUT << "}," << std::endl;
13570 else
13571 _OUT << "}" << std::endl;
13572 }
13573
print_VkCopyDescriptorSet(VkCopyDescriptorSet obj,const std::string & s,bool commaNeeded=true)13574 static void print_VkCopyDescriptorSet(VkCopyDescriptorSet obj, const std::string &s, bool commaNeeded = true)
13575 {
13576 PRINT_SPACE
13577 _OUT << "{" << std::endl;
13578 INDENT(4);
13579
13580 print_VkStructureType(obj.sType, "sType", 1);
13581
13582 if (obj.pNext)
13583 {
13584 dumpPNextChain(obj.pNext);
13585 }
13586 else
13587 {
13588 PRINT_SPACE
13589 _OUT << "\"pNext\":"
13590 << "\"NULL\""
13591 << "," << std::endl;
13592 }
13593
13594 // CTS : required value
13595 PRINT_SPACE _OUT << "\""
13596 << "srcSet"
13597 << "\""
13598 << " : "
13599 << "\""
13600 << "\"," << std::endl;
13601
13602 print_uint32_t(obj.srcBinding, "srcBinding", 1);
13603
13604 print_uint32_t(obj.srcArrayElement, "srcArrayElement", 1);
13605
13606 // CTS : required value
13607 PRINT_SPACE _OUT << "\""
13608 << "dstSet"
13609 << "\""
13610 << " : "
13611 << "\""
13612 << "\"," << std::endl;
13613
13614 print_uint32_t(obj.dstBinding, "dstBinding", 1);
13615
13616 print_uint32_t(obj.dstArrayElement, "dstArrayElement", 1);
13617
13618 print_uint32_t(obj.descriptorCount, "descriptorCount", 0);
13619
13620 INDENT(-4);
13621 PRINT_SPACE
13622 if (commaNeeded)
13623 _OUT << "}," << std::endl;
13624 else
13625 _OUT << "}" << std::endl;
13626 }
print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj,const std::string & s,bool commaNeeded=true)13627 static void print_VkCopyDescriptorSet(const VkCopyDescriptorSet *obj, const std::string &s, bool commaNeeded = true)
13628 {
13629 PRINT_SPACE
13630 _OUT << "{" << std::endl;
13631 INDENT(4);
13632
13633 print_VkStructureType(obj->sType, "sType", 1);
13634
13635 if (obj->pNext)
13636 {
13637 dumpPNextChain(obj->pNext);
13638 }
13639 else
13640 {
13641 PRINT_SPACE
13642 _OUT << "\"pNext\":"
13643 << "\"NULL\""
13644 << "," << std::endl;
13645 }
13646
13647 // CTS : required value
13648 PRINT_SPACE _OUT << "\""
13649 << "srcSet"
13650 << "\""
13651 << " : "
13652 << "\""
13653 << "\"," << std::endl;
13654
13655 print_uint32_t(obj->srcBinding, "srcBinding", 1);
13656
13657 print_uint32_t(obj->srcArrayElement, "srcArrayElement", 1);
13658
13659 // CTS : required value
13660 PRINT_SPACE _OUT << "\""
13661 << "dstSet"
13662 << "\""
13663 << " : "
13664 << "\""
13665 << "\"," << std::endl;
13666
13667 print_uint32_t(obj->dstBinding, "dstBinding", 1);
13668
13669 print_uint32_t(obj->dstArrayElement, "dstArrayElement", 1);
13670
13671 print_uint32_t(obj->descriptorCount, "descriptorCount", 0);
13672
13673 INDENT(-4);
13674 PRINT_SPACE
13675 if (commaNeeded)
13676 _OUT << "}," << std::endl;
13677 else
13678 _OUT << "}" << std::endl;
13679 }
13680
print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj,const std::string & s,bool commaNeeded=true)13681 static void print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj, const std::string &s, bool commaNeeded = true)
13682 {
13683 PRINT_SPACE
13684 _OUT << "{" << std::endl;
13685 INDENT(4);
13686
13687 // CTS : required value
13688 PRINT_SPACE _OUT << "\""
13689 << "buffer"
13690 << "\""
13691 << " : "
13692 << "\""
13693 << "\"," << std::endl;
13694
13695 print_VkDeviceSize(obj.offset, "offset", 1);
13696
13697 print_VkDeviceSize(obj.range, "range", 0);
13698
13699 INDENT(-4);
13700 PRINT_SPACE
13701 if (commaNeeded)
13702 _OUT << "}," << std::endl;
13703 else
13704 _OUT << "}" << std::endl;
13705 }
print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj,const std::string & s,bool commaNeeded=true)13706 static void print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo *obj, const std::string &s,
13707 bool commaNeeded = true)
13708 {
13709 PRINT_SPACE
13710 _OUT << "{" << std::endl;
13711 INDENT(4);
13712
13713 // CTS : required value
13714 PRINT_SPACE _OUT << "\""
13715 << "buffer"
13716 << "\""
13717 << " : "
13718 << "\""
13719 << "\"," << std::endl;
13720
13721 print_VkDeviceSize(obj->offset, "offset", 1);
13722
13723 print_VkDeviceSize(obj->range, "range", 0);
13724
13725 INDENT(-4);
13726 PRINT_SPACE
13727 if (commaNeeded)
13728 _OUT << "}," << std::endl;
13729 else
13730 _OUT << "}" << std::endl;
13731 }
13732
print_VkDescriptorImageInfo(VkDescriptorImageInfo obj,const std::string & s,bool commaNeeded=true)13733 static void print_VkDescriptorImageInfo(VkDescriptorImageInfo obj, const std::string &s, bool commaNeeded = true)
13734 {
13735 PRINT_SPACE
13736 _OUT << "{" << std::endl;
13737 INDENT(4);
13738
13739 // CTS : required value
13740 PRINT_SPACE _OUT << "\""
13741 << "sampler"
13742 << "\""
13743 << " : "
13744 << "\""
13745 << "\"," << std::endl;
13746
13747 // CTS : required value
13748 PRINT_SPACE _OUT << "\""
13749 << "imageView"
13750 << "\""
13751 << " : "
13752 << "\""
13753 << "\"," << std::endl;
13754
13755 print_VkImageLayout(obj.imageLayout, "imageLayout", 0);
13756
13757 INDENT(-4);
13758 PRINT_SPACE
13759 if (commaNeeded)
13760 _OUT << "}," << std::endl;
13761 else
13762 _OUT << "}" << std::endl;
13763 }
print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj,const std::string & s,bool commaNeeded=true)13764 static void print_VkDescriptorImageInfo(const VkDescriptorImageInfo *obj, const std::string &s, bool commaNeeded = true)
13765 {
13766 PRINT_SPACE
13767 _OUT << "{" << std::endl;
13768 INDENT(4);
13769
13770 // CTS : required value
13771 PRINT_SPACE _OUT << "\""
13772 << "sampler"
13773 << "\""
13774 << " : "
13775 << "\""
13776 << "\"," << std::endl;
13777
13778 // CTS : required value
13779 PRINT_SPACE _OUT << "\""
13780 << "imageView"
13781 << "\""
13782 << " : "
13783 << "\""
13784 << "\"," << std::endl;
13785
13786 print_VkImageLayout(obj->imageLayout, "imageLayout", 0);
13787
13788 INDENT(-4);
13789 PRINT_SPACE
13790 if (commaNeeded)
13791 _OUT << "}," << std::endl;
13792 else
13793 _OUT << "}" << std::endl;
13794 }
13795
print_VkDescriptorPoolSize(VkDescriptorPoolSize obj,const std::string & s,bool commaNeeded=true)13796 static void print_VkDescriptorPoolSize(VkDescriptorPoolSize obj, const std::string &s, bool commaNeeded = true)
13797 {
13798 PRINT_SPACE
13799 _OUT << "{" << std::endl;
13800 INDENT(4);
13801
13802 print_VkDescriptorType(obj.type, "type", 1);
13803
13804 print_uint32_t(obj.descriptorCount, "descriptorCount", 0);
13805
13806 INDENT(-4);
13807 PRINT_SPACE
13808 if (commaNeeded)
13809 _OUT << "}," << std::endl;
13810 else
13811 _OUT << "}" << std::endl;
13812 }
print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj,const std::string & s,bool commaNeeded=true)13813 static void print_VkDescriptorPoolSize(const VkDescriptorPoolSize *obj, const std::string &s, bool commaNeeded = true)
13814 {
13815 PRINT_SPACE
13816 _OUT << "{" << std::endl;
13817 INDENT(4);
13818
13819 print_VkDescriptorType(obj->type, "type", 1);
13820
13821 print_uint32_t(obj->descriptorCount, "descriptorCount", 0);
13822
13823 INDENT(-4);
13824 PRINT_SPACE
13825 if (commaNeeded)
13826 _OUT << "}," << std::endl;
13827 else
13828 _OUT << "}" << std::endl;
13829 }
13830
print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)13831 static void print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj, const std::string &s,
13832 bool commaNeeded = true)
13833 {
13834 PRINT_SPACE
13835 _OUT << "{" << std::endl;
13836 INDENT(4);
13837
13838 print_VkStructureType(obj.sType, "sType", 1);
13839
13840 if (obj.pNext)
13841 {
13842 dumpPNextChain(obj.pNext);
13843 }
13844 else
13845 {
13846 PRINT_SPACE
13847 _OUT << "\"pNext\":"
13848 << "\"NULL\""
13849 << "," << std::endl;
13850 }
13851
13852 print_VkDescriptorPoolCreateFlags(obj.flags, "flags", 1);
13853
13854 print_uint32_t(obj.maxSets, "maxSets", 1);
13855
13856 print_uint32_t(obj.poolSizeCount, "poolSizeCount", 1);
13857
13858 PRINT_SPACE
13859 _OUT << "\"pPoolSizes\": " << std::endl;
13860 if (obj.pPoolSizes)
13861 {
13862 PRINT_SPACE
13863 _OUT << "[" << std::endl;
13864 for (unsigned int i = 0; i < obj.poolSizeCount; i++)
13865 {
13866 if (i + 1 == obj.poolSizeCount)
13867 print_VkDescriptorPoolSize(obj.pPoolSizes[i], "pPoolSizes", 0);
13868 else
13869 print_VkDescriptorPoolSize(obj.pPoolSizes[i], "pPoolSizes", 1);
13870 }
13871 PRINT_SPACE
13872 _OUT << "]" << std::endl;
13873 }
13874 else
13875 {
13876 PRINT_SPACE _OUT << "\"NULL\""
13877 << "" << std::endl;
13878 }
13879
13880 INDENT(-4);
13881 PRINT_SPACE
13882 if (commaNeeded)
13883 _OUT << "}," << std::endl;
13884 else
13885 _OUT << "}" << std::endl;
13886 }
print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)13887 static void print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo *obj, const std::string &s,
13888 bool commaNeeded = true)
13889 {
13890 PRINT_SPACE
13891 _OUT << "{" << std::endl;
13892 INDENT(4);
13893
13894 print_VkStructureType(obj->sType, "sType", 1);
13895
13896 if (obj->pNext)
13897 {
13898 dumpPNextChain(obj->pNext);
13899 }
13900 else
13901 {
13902 PRINT_SPACE
13903 _OUT << "\"pNext\":"
13904 << "\"NULL\""
13905 << "," << std::endl;
13906 }
13907
13908 print_VkDescriptorPoolCreateFlags(obj->flags, "flags", 1);
13909
13910 print_uint32_t(obj->maxSets, "maxSets", 1);
13911
13912 print_uint32_t(obj->poolSizeCount, "poolSizeCount", 1);
13913
13914 PRINT_SPACE
13915 _OUT << "\"pPoolSizes\": " << std::endl;
13916 if (obj->pPoolSizes)
13917 {
13918 PRINT_SPACE
13919 _OUT << "[" << std::endl;
13920 for (unsigned int i = 0; i < obj->poolSizeCount; i++)
13921 {
13922 if (i + 1 == obj->poolSizeCount)
13923 print_VkDescriptorPoolSize(obj->pPoolSizes[i], "pPoolSizes", 0);
13924 else
13925 print_VkDescriptorPoolSize(obj->pPoolSizes[i], "pPoolSizes", 1);
13926 }
13927 PRINT_SPACE
13928 _OUT << "]" << std::endl;
13929 }
13930 else
13931 {
13932 PRINT_SPACE _OUT << "\"NULL\""
13933 << "" << std::endl;
13934 }
13935
13936 INDENT(-4);
13937 PRINT_SPACE
13938 if (commaNeeded)
13939 _OUT << "}," << std::endl;
13940 else
13941 _OUT << "}" << std::endl;
13942 }
13943
print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj,const std::string & s,bool commaNeeded=true)13944 static void print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj, const std::string &s,
13945 bool commaNeeded = true)
13946 {
13947 PRINT_SPACE
13948 _OUT << "{" << std::endl;
13949 INDENT(4);
13950
13951 print_VkStructureType(obj.sType, "sType", 1);
13952
13953 if (obj.pNext)
13954 {
13955 dumpPNextChain(obj.pNext);
13956 }
13957 else
13958 {
13959 PRINT_SPACE
13960 _OUT << "\"pNext\":"
13961 << "\"NULL\""
13962 << "," << std::endl;
13963 }
13964
13965 // CTS : required value
13966 PRINT_SPACE _OUT << "\""
13967 << "descriptorPool"
13968 << "\""
13969 << " : "
13970 << "\""
13971 << "\"," << std::endl;
13972
13973 print_uint32_t(obj.descriptorSetCount, "descriptorSetCount", 1);
13974
13975 PRINT_SPACE
13976 _OUT << "\"pSetLayouts\":" << std::endl;
13977 PRINT_SPACE
13978 if (obj.pSetLayouts)
13979 {
13980 _OUT << "[" << std::endl;
13981 for (unsigned int i = 0; i < obj.descriptorSetCount; i++)
13982 {
13983 std::stringstream tmp;
13984 tmp << "pSetLayouts"
13985 << "_" << i;
13986 bool isCommaNeeded = (i + 1) != obj.descriptorSetCount;
13987 print_VkDescriptorSetLayout(obj.pSetLayouts[i], tmp.str(), isCommaNeeded);
13988 }
13989 PRINT_SPACE
13990 _OUT << "]"
13991 << "" << std::endl;
13992 }
13993 else
13994 {
13995 _OUT << "\"NULL\""
13996 << "" << std::endl;
13997 }
13998
13999 INDENT(-4);
14000 PRINT_SPACE
14001 if (commaNeeded)
14002 _OUT << "}," << std::endl;
14003 else
14004 _OUT << "}" << std::endl;
14005 }
print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * obj,const std::string & s,bool commaNeeded=true)14006 static void print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo *obj, const std::string &s,
14007 bool commaNeeded = true)
14008 {
14009 PRINT_SPACE
14010 _OUT << "{" << std::endl;
14011 INDENT(4);
14012
14013 print_VkStructureType(obj->sType, "sType", 1);
14014
14015 if (obj->pNext)
14016 {
14017 dumpPNextChain(obj->pNext);
14018 }
14019 else
14020 {
14021 PRINT_SPACE
14022 _OUT << "\"pNext\":"
14023 << "\"NULL\""
14024 << "," << std::endl;
14025 }
14026
14027 // CTS : required value
14028 PRINT_SPACE _OUT << "\""
14029 << "descriptorPool"
14030 << "\""
14031 << " : "
14032 << "\""
14033 << "\"," << std::endl;
14034
14035 print_uint32_t(obj->descriptorSetCount, "descriptorSetCount", 1);
14036
14037 PRINT_SPACE
14038 _OUT << "\"pSetLayouts\":" << std::endl;
14039 PRINT_SPACE
14040 if (obj->pSetLayouts)
14041 {
14042 _OUT << "[" << std::endl;
14043 for (unsigned int i = 0; i < obj->descriptorSetCount; i++)
14044 {
14045 std::stringstream tmp;
14046 tmp << "pSetLayouts"
14047 << "_" << i;
14048 bool isCommaNeeded = (i + 1) != obj->descriptorSetCount;
14049 print_VkDescriptorSetLayout(obj->pSetLayouts[i], tmp.str(), isCommaNeeded);
14050 }
14051 PRINT_SPACE
14052 _OUT << "]"
14053 << "" << std::endl;
14054 }
14055 else
14056 {
14057 _OUT << "\"NULL\""
14058 << "" << std::endl;
14059 }
14060
14061 INDENT(-4);
14062 PRINT_SPACE
14063 if (commaNeeded)
14064 _OUT << "}," << std::endl;
14065 else
14066 _OUT << "}" << std::endl;
14067 }
14068
print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj,const std::string & s,bool commaNeeded=true)14069 static void print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj, const std::string &s,
14070 bool commaNeeded = true)
14071 {
14072 PRINT_SPACE
14073 _OUT << "{" << std::endl;
14074 INDENT(4);
14075
14076 print_uint32_t(obj.binding, "binding", 1);
14077
14078 print_VkDescriptorType(obj.descriptorType, "descriptorType", 1);
14079
14080 print_uint32_t(obj.descriptorCount, "descriptorCount", 1);
14081
14082 print_VkShaderStageFlags(obj.stageFlags, "stageFlags", 1);
14083
14084 PRINT_SPACE
14085 _OUT << "\"pImmutableSamplers\":" << std::endl;
14086 PRINT_SPACE
14087 if (obj.pImmutableSamplers)
14088 {
14089 _OUT << "[" << std::endl;
14090 for (unsigned int i = 0; i < obj.descriptorCount; i++)
14091 {
14092 bool isCommaNeeded = (i + 1) != obj.descriptorCount;
14093 if (isCommaNeeded)
14094 {
14095 PRINT_SPACE
14096 _OUT << obj.pImmutableSamplers[i].getInternal() << "," << std::endl;
14097 }
14098 else
14099 {
14100 PRINT_SPACE
14101 _OUT << obj.pImmutableSamplers[i].getInternal() << std::endl;
14102 }
14103 }
14104 PRINT_SPACE
14105 _OUT << "]"
14106 << "" << std::endl;
14107 }
14108 else
14109 {
14110 _OUT << "\"NULL\""
14111 << "" << std::endl;
14112 }
14113
14114 INDENT(-4);
14115 PRINT_SPACE
14116 if (commaNeeded)
14117 _OUT << "}," << std::endl;
14118 else
14119 _OUT << "}" << std::endl;
14120 }
print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * obj,const std::string & s,bool commaNeeded=true)14121 static void print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding *obj, const std::string &s,
14122 bool commaNeeded = true)
14123 {
14124 PRINT_SPACE
14125 _OUT << "{" << std::endl;
14126 INDENT(4);
14127
14128 print_uint32_t(obj->binding, "binding", 1);
14129
14130 print_VkDescriptorType(obj->descriptorType, "descriptorType", 1);
14131
14132 print_uint32_t(obj->descriptorCount, "descriptorCount", 1);
14133
14134 print_VkShaderStageFlags(obj->stageFlags, "stageFlags", 1);
14135
14136 PRINT_SPACE
14137 _OUT << "\"pImmutableSamplers\":" << std::endl;
14138 PRINT_SPACE
14139 if (obj->pImmutableSamplers)
14140 {
14141 _OUT << "[" << std::endl;
14142 for (unsigned int i = 0; i < obj->descriptorCount; i++)
14143 {
14144 bool isCommaNeeded = (i + 1) != obj->descriptorCount;
14145 if (isCommaNeeded)
14146 {
14147 PRINT_SPACE
14148 _OUT << obj->pImmutableSamplers[i].getInternal() << "," << std::endl;
14149 }
14150 else
14151 {
14152 PRINT_SPACE
14153 _OUT << obj->pImmutableSamplers[i].getInternal() << std::endl;
14154 }
14155 }
14156 PRINT_SPACE
14157 _OUT << "]"
14158 << "" << std::endl;
14159 }
14160 else
14161 {
14162 _OUT << "\"NULL\""
14163 << "" << std::endl;
14164 }
14165
14166 INDENT(-4);
14167 PRINT_SPACE
14168 if (commaNeeded)
14169 _OUT << "}," << std::endl;
14170 else
14171 _OUT << "}" << std::endl;
14172 }
14173
print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj,const std::string & s,bool commaNeeded=true)14174 static void print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj, const std::string &s,
14175 bool commaNeeded = true)
14176 {
14177 PRINT_SPACE
14178 _OUT << "{" << std::endl;
14179 INDENT(4);
14180
14181 print_VkStructureType(obj.sType, "sType", 1);
14182
14183 if (obj.pNext)
14184 {
14185 dumpPNextChain(obj.pNext);
14186 }
14187 else
14188 {
14189 PRINT_SPACE
14190 _OUT << "\"pNext\":"
14191 << "\"NULL\""
14192 << "," << std::endl;
14193 }
14194
14195 print_VkDescriptorSetLayoutCreateFlags(obj.flags, "flags", 1);
14196
14197 print_uint32_t(obj.bindingCount, "bindingCount", 1);
14198
14199 PRINT_SPACE
14200 _OUT << "\"pBindings\": " << std::endl;
14201 if (obj.pBindings)
14202 {
14203 PRINT_SPACE
14204 _OUT << "[" << std::endl;
14205 for (unsigned int i = 0; i < obj.bindingCount; i++)
14206 {
14207 if (i + 1 == obj.bindingCount)
14208 print_VkDescriptorSetLayoutBinding(obj.pBindings[i], "pBindings", 0);
14209 else
14210 print_VkDescriptorSetLayoutBinding(obj.pBindings[i], "pBindings", 1);
14211 }
14212 PRINT_SPACE
14213 _OUT << "]" << std::endl;
14214 }
14215 else
14216 {
14217 PRINT_SPACE _OUT << "\"NULL\""
14218 << "" << std::endl;
14219 }
14220
14221 INDENT(-4);
14222 PRINT_SPACE
14223 if (commaNeeded)
14224 _OUT << "}," << std::endl;
14225 else
14226 _OUT << "}" << std::endl;
14227 }
print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * obj,const std::string & s,bool commaNeeded=true)14228 static void print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo *obj, const std::string &s,
14229 bool commaNeeded = true)
14230 {
14231 PRINT_SPACE
14232 _OUT << "{" << std::endl;
14233 INDENT(4);
14234
14235 print_VkStructureType(obj->sType, "sType", 1);
14236
14237 if (obj->pNext)
14238 {
14239 dumpPNextChain(obj->pNext);
14240 }
14241 else
14242 {
14243 PRINT_SPACE
14244 _OUT << "\"pNext\":"
14245 << "\"NULL\""
14246 << "," << std::endl;
14247 }
14248
14249 print_VkDescriptorSetLayoutCreateFlags(obj->flags, "flags", 1);
14250
14251 print_uint32_t(obj->bindingCount, "bindingCount", 1);
14252
14253 PRINT_SPACE
14254 _OUT << "\"pBindings\": " << std::endl;
14255 if (obj->pBindings)
14256 {
14257 PRINT_SPACE
14258 _OUT << "[" << std::endl;
14259 for (unsigned int i = 0; i < obj->bindingCount; i++)
14260 {
14261 if (i + 1 == obj->bindingCount)
14262 print_VkDescriptorSetLayoutBinding(obj->pBindings[i], "pBindings", 0);
14263 else
14264 print_VkDescriptorSetLayoutBinding(obj->pBindings[i], "pBindings", 1);
14265 }
14266 PRINT_SPACE
14267 _OUT << "]" << std::endl;
14268 }
14269 else
14270 {
14271 PRINT_SPACE _OUT << "\"NULL\""
14272 << "" << std::endl;
14273 }
14274
14275 INDENT(-4);
14276 PRINT_SPACE
14277 if (commaNeeded)
14278 _OUT << "}," << std::endl;
14279 else
14280 _OUT << "}" << std::endl;
14281 }
14282
print_VkWriteDescriptorSet(VkWriteDescriptorSet obj,const std::string & s,bool commaNeeded=true)14283 static void print_VkWriteDescriptorSet(VkWriteDescriptorSet obj, const std::string &s, bool commaNeeded = true)
14284 {
14285 PRINT_SPACE
14286 _OUT << "{" << std::endl;
14287 INDENT(4);
14288
14289 print_VkStructureType(obj.sType, "sType", 1);
14290
14291 if (obj.pNext)
14292 {
14293 dumpPNextChain(obj.pNext);
14294 }
14295 else
14296 {
14297 PRINT_SPACE
14298 _OUT << "\"pNext\":"
14299 << "\"NULL\""
14300 << "," << std::endl;
14301 }
14302
14303 // CTS : required value
14304 PRINT_SPACE _OUT << "\""
14305 << "dstSet"
14306 << "\""
14307 << " : "
14308 << "\""
14309 << "\"," << std::endl;
14310
14311 print_uint32_t(obj.dstBinding, "dstBinding", 1);
14312
14313 print_uint32_t(obj.dstArrayElement, "dstArrayElement", 1);
14314
14315 print_uint32_t(obj.descriptorCount, "descriptorCount", 1);
14316
14317 print_VkDescriptorType(obj.descriptorType, "descriptorType", 1);
14318
14319 PRINT_SPACE
14320 _OUT << "\"pImageInfo\": " << std::endl;
14321 if (obj.pImageInfo)
14322 {
14323 PRINT_SPACE
14324 _OUT << "[" << std::endl;
14325 for (unsigned int i = 0; i < obj.descriptorCount; i++)
14326 {
14327 if (i + 1 == obj.descriptorCount)
14328 print_VkDescriptorImageInfo(obj.pImageInfo[i], "pImageInfo", 0);
14329 else
14330 print_VkDescriptorImageInfo(obj.pImageInfo[i], "pImageInfo", 1);
14331 }
14332 PRINT_SPACE
14333 _OUT << "]," << std::endl;
14334 }
14335 else
14336 {
14337 PRINT_SPACE _OUT << "\"NULL\""
14338 << "," << std::endl;
14339 }
14340
14341 PRINT_SPACE
14342 _OUT << "\"pBufferInfo\": " << std::endl;
14343 if (obj.pBufferInfo)
14344 {
14345 PRINT_SPACE
14346 _OUT << "[" << std::endl;
14347 for (unsigned int i = 0; i < obj.descriptorCount; i++)
14348 {
14349 if (i + 1 == obj.descriptorCount)
14350 print_VkDescriptorBufferInfo(obj.pBufferInfo[i], "pBufferInfo", 0);
14351 else
14352 print_VkDescriptorBufferInfo(obj.pBufferInfo[i], "pBufferInfo", 1);
14353 }
14354 PRINT_SPACE
14355 _OUT << "]," << std::endl;
14356 }
14357 else
14358 {
14359 PRINT_SPACE _OUT << "\"NULL\""
14360 << "," << std::endl;
14361 }
14362
14363 PRINT_SPACE
14364 _OUT << "\"pTexelBufferView\":" << std::endl;
14365 PRINT_SPACE
14366 if (obj.pTexelBufferView)
14367 {
14368 _OUT << "[" << std::endl;
14369 for (unsigned int i = 0; i < obj.descriptorCount; i++)
14370 {
14371 std::stringstream tmp;
14372 tmp << "pTexelBufferView"
14373 << "_" << i;
14374 bool isCommaNeeded = (i + 1) != obj.descriptorCount;
14375 print_VkBufferView(obj.pTexelBufferView[i], tmp.str(), isCommaNeeded);
14376 }
14377 PRINT_SPACE
14378 _OUT << "]"
14379 << "" << std::endl;
14380 }
14381 else
14382 {
14383 _OUT << "\"NULL\""
14384 << "" << std::endl;
14385 }
14386
14387 INDENT(-4);
14388 PRINT_SPACE
14389 if (commaNeeded)
14390 _OUT << "}," << std::endl;
14391 else
14392 _OUT << "}" << std::endl;
14393 }
print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj,const std::string & s,bool commaNeeded=true)14394 static void print_VkWriteDescriptorSet(const VkWriteDescriptorSet *obj, const std::string &s, bool commaNeeded = true)
14395 {
14396 PRINT_SPACE
14397 _OUT << "{" << std::endl;
14398 INDENT(4);
14399
14400 print_VkStructureType(obj->sType, "sType", 1);
14401
14402 if (obj->pNext)
14403 {
14404 dumpPNextChain(obj->pNext);
14405 }
14406 else
14407 {
14408 PRINT_SPACE
14409 _OUT << "\"pNext\":"
14410 << "\"NULL\""
14411 << "," << std::endl;
14412 }
14413
14414 // CTS : required value
14415 PRINT_SPACE _OUT << "\""
14416 << "dstSet"
14417 << "\""
14418 << " : "
14419 << "\""
14420 << "\"," << std::endl;
14421
14422 print_uint32_t(obj->dstBinding, "dstBinding", 1);
14423
14424 print_uint32_t(obj->dstArrayElement, "dstArrayElement", 1);
14425
14426 print_uint32_t(obj->descriptorCount, "descriptorCount", 1);
14427
14428 print_VkDescriptorType(obj->descriptorType, "descriptorType", 1);
14429
14430 PRINT_SPACE
14431 _OUT << "\"pImageInfo\": " << std::endl;
14432 if (obj->pImageInfo)
14433 {
14434 PRINT_SPACE
14435 _OUT << "[" << std::endl;
14436 for (unsigned int i = 0; i < obj->descriptorCount; i++)
14437 {
14438 if (i + 1 == obj->descriptorCount)
14439 print_VkDescriptorImageInfo(obj->pImageInfo[i], "pImageInfo", 0);
14440 else
14441 print_VkDescriptorImageInfo(obj->pImageInfo[i], "pImageInfo", 1);
14442 }
14443 PRINT_SPACE
14444 _OUT << "]," << std::endl;
14445 }
14446 else
14447 {
14448 PRINT_SPACE _OUT << "\"NULL\""
14449 << "," << std::endl;
14450 }
14451
14452 PRINT_SPACE
14453 _OUT << "\"pBufferInfo\": " << std::endl;
14454 if (obj->pBufferInfo)
14455 {
14456 PRINT_SPACE
14457 _OUT << "[" << std::endl;
14458 for (unsigned int i = 0; i < obj->descriptorCount; i++)
14459 {
14460 if (i + 1 == obj->descriptorCount)
14461 print_VkDescriptorBufferInfo(obj->pBufferInfo[i], "pBufferInfo", 0);
14462 else
14463 print_VkDescriptorBufferInfo(obj->pBufferInfo[i], "pBufferInfo", 1);
14464 }
14465 PRINT_SPACE
14466 _OUT << "]," << std::endl;
14467 }
14468 else
14469 {
14470 PRINT_SPACE _OUT << "\"NULL\""
14471 << "," << std::endl;
14472 }
14473
14474 PRINT_SPACE
14475 _OUT << "\"pTexelBufferView\":" << std::endl;
14476 PRINT_SPACE
14477 if (obj->pTexelBufferView)
14478 {
14479 _OUT << "[" << std::endl;
14480 for (unsigned int i = 0; i < obj->descriptorCount; i++)
14481 {
14482 std::stringstream tmp;
14483 tmp << "pTexelBufferView"
14484 << "_" << i;
14485 bool isCommaNeeded = (i + 1) != obj->descriptorCount;
14486 print_VkBufferView(obj->pTexelBufferView[i], tmp.str(), isCommaNeeded);
14487 }
14488 PRINT_SPACE
14489 _OUT << "]"
14490 << "" << std::endl;
14491 }
14492 else
14493 {
14494 _OUT << "\"NULL\""
14495 << "" << std::endl;
14496 }
14497
14498 INDENT(-4);
14499 PRINT_SPACE
14500 if (commaNeeded)
14501 _OUT << "}," << std::endl;
14502 else
14503 _OUT << "}" << std::endl;
14504 }
14505
print_VkAttachmentDescription(VkAttachmentDescription obj,const std::string & s,bool commaNeeded=true)14506 static void print_VkAttachmentDescription(VkAttachmentDescription obj, const std::string &s, bool commaNeeded = true)
14507 {
14508 PRINT_SPACE
14509 _OUT << "{" << std::endl;
14510 INDENT(4);
14511
14512 print_VkAttachmentDescriptionFlags(obj.flags, "flags", 1);
14513
14514 print_VkFormat(obj.format, "format", 1);
14515
14516 print_VkSampleCountFlagBits(obj.samples, "samples", 1);
14517
14518 print_VkAttachmentLoadOp(obj.loadOp, "loadOp", 1);
14519
14520 print_VkAttachmentStoreOp(obj.storeOp, "storeOp", 1);
14521
14522 print_VkAttachmentLoadOp(obj.stencilLoadOp, "stencilLoadOp", 1);
14523
14524 print_VkAttachmentStoreOp(obj.stencilStoreOp, "stencilStoreOp", 1);
14525
14526 print_VkImageLayout(obj.initialLayout, "initialLayout", 1);
14527
14528 print_VkImageLayout(obj.finalLayout, "finalLayout", 0);
14529
14530 INDENT(-4);
14531 PRINT_SPACE
14532 if (commaNeeded)
14533 _OUT << "}," << std::endl;
14534 else
14535 _OUT << "}" << std::endl;
14536 }
print_VkAttachmentDescription(const VkAttachmentDescription * obj,const std::string & s,bool commaNeeded=true)14537 static void print_VkAttachmentDescription(const VkAttachmentDescription *obj, const std::string &s,
14538 bool commaNeeded = true)
14539 {
14540 PRINT_SPACE
14541 _OUT << "{" << std::endl;
14542 INDENT(4);
14543
14544 print_VkAttachmentDescriptionFlags(obj->flags, "flags", 1);
14545
14546 print_VkFormat(obj->format, "format", 1);
14547
14548 print_VkSampleCountFlagBits(obj->samples, "samples", 1);
14549
14550 print_VkAttachmentLoadOp(obj->loadOp, "loadOp", 1);
14551
14552 print_VkAttachmentStoreOp(obj->storeOp, "storeOp", 1);
14553
14554 print_VkAttachmentLoadOp(obj->stencilLoadOp, "stencilLoadOp", 1);
14555
14556 print_VkAttachmentStoreOp(obj->stencilStoreOp, "stencilStoreOp", 1);
14557
14558 print_VkImageLayout(obj->initialLayout, "initialLayout", 1);
14559
14560 print_VkImageLayout(obj->finalLayout, "finalLayout", 0);
14561
14562 INDENT(-4);
14563 PRINT_SPACE
14564 if (commaNeeded)
14565 _OUT << "}," << std::endl;
14566 else
14567 _OUT << "}" << std::endl;
14568 }
14569
print_VkAttachmentReference(VkAttachmentReference obj,const std::string & s,bool commaNeeded=true)14570 static void print_VkAttachmentReference(VkAttachmentReference obj, const std::string &s, bool commaNeeded = true)
14571 {
14572 PRINT_SPACE
14573 _OUT << "{" << std::endl;
14574 INDENT(4);
14575
14576 print_uint32_t(obj.attachment, "attachment", 1);
14577
14578 print_VkImageLayout(obj.layout, "layout", 0);
14579
14580 INDENT(-4);
14581 PRINT_SPACE
14582 if (commaNeeded)
14583 _OUT << "}," << std::endl;
14584 else
14585 _OUT << "}" << std::endl;
14586 }
print_VkAttachmentReference(const VkAttachmentReference * obj,const std::string & s,bool commaNeeded=true)14587 static void print_VkAttachmentReference(const VkAttachmentReference *obj, const std::string &s, bool commaNeeded = true)
14588 {
14589 PRINT_SPACE
14590 _OUT << "{" << std::endl;
14591 INDENT(4);
14592
14593 print_uint32_t(obj->attachment, "attachment", 1);
14594
14595 print_VkImageLayout(obj->layout, "layout", 0);
14596
14597 INDENT(-4);
14598 PRINT_SPACE
14599 if (commaNeeded)
14600 _OUT << "}," << std::endl;
14601 else
14602 _OUT << "}" << std::endl;
14603 }
14604
print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj,const std::string & s,bool commaNeeded=true)14605 static void print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj, const std::string &s, bool commaNeeded = true)
14606 {
14607 PRINT_SPACE
14608 _OUT << "{" << std::endl;
14609 INDENT(4);
14610
14611 print_VkStructureType(obj.sType, "sType", 1);
14612
14613 if (obj.pNext)
14614 {
14615 dumpPNextChain(obj.pNext);
14616 }
14617 else
14618 {
14619 PRINT_SPACE
14620 _OUT << "\"pNext\":"
14621 << "\"NULL\""
14622 << "," << std::endl;
14623 }
14624
14625 print_VkFramebufferCreateFlags(obj.flags, "flags", 1);
14626
14627 // CTS : required value
14628 PRINT_SPACE _OUT << "\""
14629 << "renderPass"
14630 << "\""
14631 << " : " << obj.renderPass.getInternal() << "," << std::endl;
14632
14633 print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
14634
14635 PRINT_SPACE
14636 _OUT << "\"pAttachments\":" << std::endl;
14637 PRINT_SPACE
14638 if (obj.pAttachments)
14639 {
14640 _OUT << "[" << std::endl;
14641 for (unsigned int i = 0; i < obj.attachmentCount; i++)
14642 {
14643 std::stringstream tmp;
14644 tmp << "pAttachments"
14645 << "_" << i;
14646 bool isCommaNeeded = (i + 1) != obj.attachmentCount;
14647 print_VkImageView(obj.pAttachments[i], tmp.str(), isCommaNeeded);
14648 }
14649 PRINT_SPACE
14650 _OUT << "]"
14651 << "," << std::endl;
14652 }
14653 else
14654 {
14655 _OUT << "\"NULL\""
14656 << "," << std::endl;
14657 }
14658
14659 print_uint32_t(obj.width, "width", 1);
14660
14661 print_uint32_t(obj.height, "height", 1);
14662
14663 print_uint32_t(obj.layers, "layers", 0);
14664
14665 INDENT(-4);
14666 PRINT_SPACE
14667 if (commaNeeded)
14668 _OUT << "}," << std::endl;
14669 else
14670 _OUT << "}" << std::endl;
14671 }
print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj,const std::string & s,bool commaNeeded=true)14672 static void print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo *obj, const std::string &s,
14673 bool commaNeeded = true)
14674 {
14675 PRINT_SPACE
14676 _OUT << "{" << std::endl;
14677 INDENT(4);
14678
14679 print_VkStructureType(obj->sType, "sType", 1);
14680
14681 if (obj->pNext)
14682 {
14683 dumpPNextChain(obj->pNext);
14684 }
14685 else
14686 {
14687 PRINT_SPACE
14688 _OUT << "\"pNext\":"
14689 << "\"NULL\""
14690 << "," << std::endl;
14691 }
14692
14693 print_VkFramebufferCreateFlags(obj->flags, "flags", 1);
14694
14695 // CTS : required value
14696 PRINT_SPACE _OUT << "\""
14697 << "renderPass"
14698 << "\""
14699 << " : " << obj->renderPass.getInternal() << "," << std::endl;
14700
14701 print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
14702
14703 PRINT_SPACE
14704 _OUT << "\"pAttachments\":" << std::endl;
14705 PRINT_SPACE
14706 if (obj->pAttachments)
14707 {
14708 _OUT << "[" << std::endl;
14709 for (unsigned int i = 0; i < obj->attachmentCount; i++)
14710 {
14711 std::stringstream tmp;
14712 tmp << "pAttachments"
14713 << "_" << i;
14714 bool isCommaNeeded = (i + 1) != obj->attachmentCount;
14715 print_VkImageView(obj->pAttachments[i], tmp.str(), isCommaNeeded);
14716 }
14717 PRINT_SPACE
14718 _OUT << "]"
14719 << "," << std::endl;
14720 }
14721 else
14722 {
14723 _OUT << "\"NULL\""
14724 << "," << std::endl;
14725 }
14726
14727 print_uint32_t(obj->width, "width", 1);
14728
14729 print_uint32_t(obj->height, "height", 1);
14730
14731 print_uint32_t(obj->layers, "layers", 0);
14732
14733 INDENT(-4);
14734 PRINT_SPACE
14735 if (commaNeeded)
14736 _OUT << "}," << std::endl;
14737 else
14738 _OUT << "}" << std::endl;
14739 }
14740
print_VkSubpassDescription(VkSubpassDescription obj,const std::string & s,bool commaNeeded=true)14741 static void print_VkSubpassDescription(VkSubpassDescription obj, const std::string &s, bool commaNeeded = true)
14742 {
14743 PRINT_SPACE
14744 _OUT << "{" << std::endl;
14745 INDENT(4);
14746
14747 print_VkSubpassDescriptionFlags(obj.flags, "flags", 1);
14748
14749 print_VkPipelineBindPoint(obj.pipelineBindPoint, "pipelineBindPoint", 1);
14750
14751 print_uint32_t(obj.inputAttachmentCount, "inputAttachmentCount", 1);
14752
14753 PRINT_SPACE
14754 _OUT << "\"pInputAttachments\": " << std::endl;
14755 if (obj.pInputAttachments)
14756 {
14757 PRINT_SPACE
14758 _OUT << "[" << std::endl;
14759 for (unsigned int i = 0; i < obj.inputAttachmentCount; i++)
14760 {
14761 if (i + 1 == obj.inputAttachmentCount)
14762 print_VkAttachmentReference(obj.pInputAttachments[i], "pInputAttachments", 0);
14763 else
14764 print_VkAttachmentReference(obj.pInputAttachments[i], "pInputAttachments", 1);
14765 }
14766 PRINT_SPACE
14767 _OUT << "]," << std::endl;
14768 }
14769 else
14770 {
14771 PRINT_SPACE _OUT << "\"NULL\""
14772 << "," << std::endl;
14773 }
14774
14775 print_uint32_t(obj.colorAttachmentCount, "colorAttachmentCount", 1);
14776
14777 PRINT_SPACE
14778 _OUT << "\"pColorAttachments\": " << std::endl;
14779 if (obj.pColorAttachments)
14780 {
14781 PRINT_SPACE
14782 _OUT << "[" << std::endl;
14783 for (unsigned int i = 0; i < obj.colorAttachmentCount; i++)
14784 {
14785 if (i + 1 == obj.colorAttachmentCount)
14786 print_VkAttachmentReference(obj.pColorAttachments[i], "pColorAttachments", 0);
14787 else
14788 print_VkAttachmentReference(obj.pColorAttachments[i], "pColorAttachments", 1);
14789 }
14790 PRINT_SPACE
14791 _OUT << "]," << std::endl;
14792 }
14793 else
14794 {
14795 PRINT_SPACE _OUT << "\"NULL\""
14796 << "," << std::endl;
14797 }
14798
14799 PRINT_SPACE
14800 _OUT << "\"pResolveAttachments\": " << std::endl;
14801 if (obj.pResolveAttachments)
14802 {
14803 PRINT_SPACE
14804 _OUT << "[" << std::endl;
14805 for (unsigned int i = 0; i < obj.colorAttachmentCount; i++)
14806 {
14807 if (i + 1 == obj.colorAttachmentCount)
14808 print_VkAttachmentReference(obj.pResolveAttachments[i], "pResolveAttachments", 0);
14809 else
14810 print_VkAttachmentReference(obj.pResolveAttachments[i], "pResolveAttachments", 1);
14811 }
14812 PRINT_SPACE
14813 _OUT << "]," << std::endl;
14814 }
14815 else
14816 {
14817 PRINT_SPACE _OUT << "\"NULL\""
14818 << "," << std::endl;
14819 }
14820
14821 PRINT_SPACE
14822 _OUT << "\"pDepthStencilAttachment\": " << std::endl;
14823 if (obj.pDepthStencilAttachment)
14824 {
14825 print_VkAttachmentReference(obj.pDepthStencilAttachment, "pDepthStencilAttachment", 1);
14826 }
14827 else
14828 {
14829 PRINT_SPACE _OUT << "\"NULL\""
14830 << "," << std::endl;
14831 }
14832
14833 print_uint32_t(obj.preserveAttachmentCount, "preserveAttachmentCount", 1);
14834
14835 PRINT_SPACE
14836 _OUT << "\"pPreserveAttachments\":" << std::endl;
14837 PRINT_SPACE
14838 if (obj.pPreserveAttachments)
14839 {
14840 _OUT << "[" << std::endl;
14841 for (unsigned int i = 0; i < obj.preserveAttachmentCount; i++)
14842 {
14843 bool isCommaNeeded = (i + 1) != obj.preserveAttachmentCount;
14844 print_uint32_t(obj.pPreserveAttachments[i], "", isCommaNeeded);
14845 }
14846 PRINT_SPACE
14847 _OUT << "]"
14848 << "" << std::endl;
14849 }
14850 else
14851 {
14852 _OUT << "\"NULL\""
14853 << "" << std::endl;
14854 }
14855
14856 INDENT(-4);
14857 PRINT_SPACE
14858 if (commaNeeded)
14859 _OUT << "}," << std::endl;
14860 else
14861 _OUT << "}" << std::endl;
14862 }
print_VkSubpassDescription(const VkSubpassDescription * obj,const std::string & s,bool commaNeeded=true)14863 static void print_VkSubpassDescription(const VkSubpassDescription *obj, const std::string &s, bool commaNeeded = true)
14864 {
14865 PRINT_SPACE
14866 _OUT << "{" << std::endl;
14867 INDENT(4);
14868
14869 print_VkSubpassDescriptionFlags(obj->flags, "flags", 1);
14870
14871 print_VkPipelineBindPoint(obj->pipelineBindPoint, "pipelineBindPoint", 1);
14872
14873 print_uint32_t(obj->inputAttachmentCount, "inputAttachmentCount", 1);
14874
14875 PRINT_SPACE
14876 _OUT << "\"pInputAttachments\": " << std::endl;
14877 if (obj->pInputAttachments)
14878 {
14879 PRINT_SPACE
14880 _OUT << "[" << std::endl;
14881 for (unsigned int i = 0; i < obj->inputAttachmentCount; i++)
14882 {
14883 if (i + 1 == obj->inputAttachmentCount)
14884 print_VkAttachmentReference(obj->pInputAttachments[i], "pInputAttachments", 0);
14885 else
14886 print_VkAttachmentReference(obj->pInputAttachments[i], "pInputAttachments", 1);
14887 }
14888 PRINT_SPACE
14889 _OUT << "]," << std::endl;
14890 }
14891 else
14892 {
14893 PRINT_SPACE _OUT << "\"NULL\""
14894 << "," << std::endl;
14895 }
14896
14897 print_uint32_t(obj->colorAttachmentCount, "colorAttachmentCount", 1);
14898
14899 PRINT_SPACE
14900 _OUT << "\"pColorAttachments\": " << std::endl;
14901 if (obj->pColorAttachments)
14902 {
14903 PRINT_SPACE
14904 _OUT << "[" << std::endl;
14905 for (unsigned int i = 0; i < obj->colorAttachmentCount; i++)
14906 {
14907 if (i + 1 == obj->colorAttachmentCount)
14908 print_VkAttachmentReference(obj->pColorAttachments[i], "pColorAttachments", 0);
14909 else
14910 print_VkAttachmentReference(obj->pColorAttachments[i], "pColorAttachments", 1);
14911 }
14912 PRINT_SPACE
14913 _OUT << "]," << std::endl;
14914 }
14915 else
14916 {
14917 PRINT_SPACE _OUT << "\"NULL\""
14918 << "," << std::endl;
14919 }
14920
14921 PRINT_SPACE
14922 _OUT << "\"pResolveAttachments\": " << std::endl;
14923 if (obj->pResolveAttachments)
14924 {
14925 PRINT_SPACE
14926 _OUT << "[" << std::endl;
14927 for (unsigned int i = 0; i < obj->colorAttachmentCount; i++)
14928 {
14929 if (i + 1 == obj->colorAttachmentCount)
14930 print_VkAttachmentReference(obj->pResolveAttachments[i], "pResolveAttachments", 0);
14931 else
14932 print_VkAttachmentReference(obj->pResolveAttachments[i], "pResolveAttachments", 1);
14933 }
14934 PRINT_SPACE
14935 _OUT << "]," << std::endl;
14936 }
14937 else
14938 {
14939 PRINT_SPACE _OUT << "\"NULL\""
14940 << "," << std::endl;
14941 }
14942
14943 PRINT_SPACE
14944 _OUT << "\"pDepthStencilAttachment\": " << std::endl;
14945 if (obj->pDepthStencilAttachment)
14946 {
14947 print_VkAttachmentReference(obj->pDepthStencilAttachment, "pDepthStencilAttachment", 1);
14948 }
14949 else
14950 {
14951 PRINT_SPACE _OUT << "\"NULL\""
14952 << "," << std::endl;
14953 }
14954
14955 print_uint32_t(obj->preserveAttachmentCount, "preserveAttachmentCount", 1);
14956
14957 PRINT_SPACE
14958 _OUT << "\"pPreserveAttachments\":" << std::endl;
14959 PRINT_SPACE
14960 if (obj->pPreserveAttachments)
14961 {
14962 _OUT << "[" << std::endl;
14963 for (unsigned int i = 0; i < obj->preserveAttachmentCount; i++)
14964 {
14965 bool isCommaNeeded = (i + 1) != obj->preserveAttachmentCount;
14966 print_uint32_t(obj->pPreserveAttachments[i], "", isCommaNeeded);
14967 }
14968 PRINT_SPACE
14969 _OUT << "]"
14970 << "" << std::endl;
14971 }
14972 else
14973 {
14974 _OUT << "\"NULL\""
14975 << "" << std::endl;
14976 }
14977
14978 INDENT(-4);
14979 PRINT_SPACE
14980 if (commaNeeded)
14981 _OUT << "}," << std::endl;
14982 else
14983 _OUT << "}" << std::endl;
14984 }
14985
print_VkSubpassDependency(VkSubpassDependency obj,const std::string & s,bool commaNeeded=true)14986 static void print_VkSubpassDependency(VkSubpassDependency obj, const std::string &s, bool commaNeeded = true)
14987 {
14988 PRINT_SPACE
14989 _OUT << "{" << std::endl;
14990 INDENT(4);
14991
14992 print_uint32_t(obj.srcSubpass, "srcSubpass", 1);
14993
14994 print_uint32_t(obj.dstSubpass, "dstSubpass", 1);
14995
14996 print_VkPipelineStageFlags(obj.srcStageMask, "srcStageMask", 1);
14997
14998 print_VkPipelineStageFlags(obj.dstStageMask, "dstStageMask", 1);
14999
15000 print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
15001
15002 print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
15003
15004 print_VkDependencyFlags(obj.dependencyFlags, "dependencyFlags", 0);
15005
15006 INDENT(-4);
15007 PRINT_SPACE
15008 if (commaNeeded)
15009 _OUT << "}," << std::endl;
15010 else
15011 _OUT << "}" << std::endl;
15012 }
print_VkSubpassDependency(const VkSubpassDependency * obj,const std::string & s,bool commaNeeded=true)15013 static void print_VkSubpassDependency(const VkSubpassDependency *obj, const std::string &s, bool commaNeeded = true)
15014 {
15015 PRINT_SPACE
15016 _OUT << "{" << std::endl;
15017 INDENT(4);
15018
15019 print_uint32_t(obj->srcSubpass, "srcSubpass", 1);
15020
15021 print_uint32_t(obj->dstSubpass, "dstSubpass", 1);
15022
15023 print_VkPipelineStageFlags(obj->srcStageMask, "srcStageMask", 1);
15024
15025 print_VkPipelineStageFlags(obj->dstStageMask, "dstStageMask", 1);
15026
15027 print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
15028
15029 print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
15030
15031 print_VkDependencyFlags(obj->dependencyFlags, "dependencyFlags", 0);
15032
15033 INDENT(-4);
15034 PRINT_SPACE
15035 if (commaNeeded)
15036 _OUT << "}," << std::endl;
15037 else
15038 _OUT << "}" << std::endl;
15039 }
15040
print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj,const std::string & s,bool commaNeeded=true)15041 static void print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj, const std::string &s, bool commaNeeded = true)
15042 {
15043 PRINT_SPACE
15044 _OUT << "{" << std::endl;
15045 INDENT(4);
15046
15047 print_VkStructureType(obj.sType, "sType", 1);
15048
15049 if (obj.pNext)
15050 {
15051 dumpPNextChain(obj.pNext);
15052 }
15053 else
15054 {
15055 PRINT_SPACE
15056 _OUT << "\"pNext\":"
15057 << "\"NULL\""
15058 << "," << std::endl;
15059 }
15060
15061 print_VkRenderPassCreateFlags(obj.flags, "flags", 1);
15062
15063 print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
15064
15065 PRINT_SPACE
15066 _OUT << "\"pAttachments\": " << std::endl;
15067 if (obj.pAttachments)
15068 {
15069 PRINT_SPACE
15070 _OUT << "[" << std::endl;
15071 for (unsigned int i = 0; i < obj.attachmentCount; i++)
15072 {
15073 if (i + 1 == obj.attachmentCount)
15074 print_VkAttachmentDescription(obj.pAttachments[i], "pAttachments", 0);
15075 else
15076 print_VkAttachmentDescription(obj.pAttachments[i], "pAttachments", 1);
15077 }
15078 PRINT_SPACE
15079 _OUT << "]," << std::endl;
15080 }
15081 else
15082 {
15083 PRINT_SPACE _OUT << "\"NULL\""
15084 << "," << std::endl;
15085 }
15086
15087 print_uint32_t(obj.subpassCount, "subpassCount", 1);
15088
15089 PRINT_SPACE
15090 _OUT << "\"pSubpasses\": " << std::endl;
15091 if (obj.pSubpasses)
15092 {
15093 PRINT_SPACE
15094 _OUT << "[" << std::endl;
15095 for (unsigned int i = 0; i < obj.subpassCount; i++)
15096 {
15097 if (i + 1 == obj.subpassCount)
15098 print_VkSubpassDescription(obj.pSubpasses[i], "pSubpasses", 0);
15099 else
15100 print_VkSubpassDescription(obj.pSubpasses[i], "pSubpasses", 1);
15101 }
15102 PRINT_SPACE
15103 _OUT << "]," << std::endl;
15104 }
15105 else
15106 {
15107 PRINT_SPACE _OUT << "\"NULL\""
15108 << "," << std::endl;
15109 }
15110
15111 print_uint32_t(obj.dependencyCount, "dependencyCount", 1);
15112
15113 PRINT_SPACE
15114 _OUT << "\"pDependencies\": " << std::endl;
15115 if (obj.pDependencies)
15116 {
15117 PRINT_SPACE
15118 _OUT << "[" << std::endl;
15119 for (unsigned int i = 0; i < obj.dependencyCount; i++)
15120 {
15121 if (i + 1 == obj.dependencyCount)
15122 print_VkSubpassDependency(obj.pDependencies[i], "pDependencies", 0);
15123 else
15124 print_VkSubpassDependency(obj.pDependencies[i], "pDependencies", 1);
15125 }
15126 PRINT_SPACE
15127 _OUT << "]" << std::endl;
15128 }
15129 else
15130 {
15131 PRINT_SPACE _OUT << "\"NULL\""
15132 << "" << std::endl;
15133 }
15134
15135 INDENT(-4);
15136 PRINT_SPACE
15137 if (commaNeeded)
15138 _OUT << "}," << std::endl;
15139 else
15140 _OUT << "}" << std::endl;
15141 }
print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj,const std::string & s,bool commaNeeded=true)15142 static void print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo *obj, const std::string &s,
15143 bool commaNeeded = true)
15144 {
15145 PRINT_SPACE
15146 _OUT << "{" << std::endl;
15147 INDENT(4);
15148
15149 print_VkStructureType(obj->sType, "sType", 1);
15150
15151 if (obj->pNext)
15152 {
15153 dumpPNextChain(obj->pNext);
15154 }
15155 else
15156 {
15157 PRINT_SPACE
15158 _OUT << "\"pNext\":"
15159 << "\"NULL\""
15160 << "," << std::endl;
15161 }
15162
15163 print_VkRenderPassCreateFlags(obj->flags, "flags", 1);
15164
15165 print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
15166
15167 PRINT_SPACE
15168 _OUT << "\"pAttachments\": " << std::endl;
15169 if (obj->pAttachments)
15170 {
15171 PRINT_SPACE
15172 _OUT << "[" << std::endl;
15173 for (unsigned int i = 0; i < obj->attachmentCount; i++)
15174 {
15175 if (i + 1 == obj->attachmentCount)
15176 print_VkAttachmentDescription(obj->pAttachments[i], "pAttachments", 0);
15177 else
15178 print_VkAttachmentDescription(obj->pAttachments[i], "pAttachments", 1);
15179 }
15180 PRINT_SPACE
15181 _OUT << "]," << std::endl;
15182 }
15183 else
15184 {
15185 PRINT_SPACE _OUT << "\"NULL\""
15186 << "," << std::endl;
15187 }
15188
15189 print_uint32_t(obj->subpassCount, "subpassCount", 1);
15190
15191 PRINT_SPACE
15192 _OUT << "\"pSubpasses\": " << std::endl;
15193 if (obj->pSubpasses)
15194 {
15195 PRINT_SPACE
15196 _OUT << "[" << std::endl;
15197 for (unsigned int i = 0; i < obj->subpassCount; i++)
15198 {
15199 if (i + 1 == obj->subpassCount)
15200 print_VkSubpassDescription(obj->pSubpasses[i], "pSubpasses", 0);
15201 else
15202 print_VkSubpassDescription(obj->pSubpasses[i], "pSubpasses", 1);
15203 }
15204 PRINT_SPACE
15205 _OUT << "]," << std::endl;
15206 }
15207 else
15208 {
15209 PRINT_SPACE _OUT << "\"NULL\""
15210 << "," << std::endl;
15211 }
15212
15213 print_uint32_t(obj->dependencyCount, "dependencyCount", 1);
15214
15215 PRINT_SPACE
15216 _OUT << "\"pDependencies\": " << std::endl;
15217 if (obj->pDependencies)
15218 {
15219 PRINT_SPACE
15220 _OUT << "[" << std::endl;
15221 for (unsigned int i = 0; i < obj->dependencyCount; i++)
15222 {
15223 if (i + 1 == obj->dependencyCount)
15224 print_VkSubpassDependency(obj->pDependencies[i], "pDependencies", 0);
15225 else
15226 print_VkSubpassDependency(obj->pDependencies[i], "pDependencies", 1);
15227 }
15228 PRINT_SPACE
15229 _OUT << "]" << std::endl;
15230 }
15231 else
15232 {
15233 PRINT_SPACE _OUT << "\"NULL\""
15234 << "" << std::endl;
15235 }
15236
15237 INDENT(-4);
15238 PRINT_SPACE
15239 if (commaNeeded)
15240 _OUT << "}," << std::endl;
15241 else
15242 _OUT << "}" << std::endl;
15243 }
15244
print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)15245 static void print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj, const std::string &s, bool commaNeeded = true)
15246 {
15247 PRINT_SPACE
15248 _OUT << "{" << std::endl;
15249 INDENT(4);
15250
15251 print_VkStructureType(obj.sType, "sType", 1);
15252
15253 if (obj.pNext)
15254 {
15255 dumpPNextChain(obj.pNext);
15256 }
15257 else
15258 {
15259 PRINT_SPACE
15260 _OUT << "\"pNext\":"
15261 << "\"NULL\""
15262 << "," << std::endl;
15263 }
15264
15265 print_VkCommandPoolCreateFlags(obj.flags, "flags", 1);
15266
15267 print_uint32_t(obj.queueFamilyIndex, "queueFamilyIndex", 0);
15268
15269 INDENT(-4);
15270 PRINT_SPACE
15271 if (commaNeeded)
15272 _OUT << "}," << std::endl;
15273 else
15274 _OUT << "}" << std::endl;
15275 }
print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)15276 static void print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo *obj, const std::string &s,
15277 bool commaNeeded = true)
15278 {
15279 PRINT_SPACE
15280 _OUT << "{" << std::endl;
15281 INDENT(4);
15282
15283 print_VkStructureType(obj->sType, "sType", 1);
15284
15285 if (obj->pNext)
15286 {
15287 dumpPNextChain(obj->pNext);
15288 }
15289 else
15290 {
15291 PRINT_SPACE
15292 _OUT << "\"pNext\":"
15293 << "\"NULL\""
15294 << "," << std::endl;
15295 }
15296
15297 print_VkCommandPoolCreateFlags(obj->flags, "flags", 1);
15298
15299 print_uint32_t(obj->queueFamilyIndex, "queueFamilyIndex", 0);
15300
15301 INDENT(-4);
15302 PRINT_SPACE
15303 if (commaNeeded)
15304 _OUT << "}," << std::endl;
15305 else
15306 _OUT << "}" << std::endl;
15307 }
15308
print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj,const std::string & s,bool commaNeeded=true)15309 static void print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj, const std::string &s,
15310 bool commaNeeded = true)
15311 {
15312 PRINT_SPACE
15313 _OUT << "{" << std::endl;
15314 INDENT(4);
15315
15316 print_VkStructureType(obj.sType, "sType", 1);
15317
15318 if (obj.pNext)
15319 {
15320 dumpPNextChain(obj.pNext);
15321 }
15322 else
15323 {
15324 PRINT_SPACE
15325 _OUT << "\"pNext\":"
15326 << "\"NULL\""
15327 << "," << std::endl;
15328 }
15329
15330 // CTS : required value
15331 PRINT_SPACE _OUT << "\""
15332 << "commandPool"
15333 << "\""
15334 << " : "
15335 << "\""
15336 << "\"," << std::endl;
15337
15338 print_VkCommandBufferLevel(obj.level, "level", 1);
15339
15340 print_uint32_t(obj.commandBufferCount, "commandBufferCount", 0);
15341
15342 INDENT(-4);
15343 PRINT_SPACE
15344 if (commaNeeded)
15345 _OUT << "}," << std::endl;
15346 else
15347 _OUT << "}" << std::endl;
15348 }
print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * obj,const std::string & s,bool commaNeeded=true)15349 static void print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo *obj, const std::string &s,
15350 bool commaNeeded = true)
15351 {
15352 PRINT_SPACE
15353 _OUT << "{" << std::endl;
15354 INDENT(4);
15355
15356 print_VkStructureType(obj->sType, "sType", 1);
15357
15358 if (obj->pNext)
15359 {
15360 dumpPNextChain(obj->pNext);
15361 }
15362 else
15363 {
15364 PRINT_SPACE
15365 _OUT << "\"pNext\":"
15366 << "\"NULL\""
15367 << "," << std::endl;
15368 }
15369
15370 // CTS : required value
15371 PRINT_SPACE _OUT << "\""
15372 << "commandPool"
15373 << "\""
15374 << " : "
15375 << "\""
15376 << "\"," << std::endl;
15377
15378 print_VkCommandBufferLevel(obj->level, "level", 1);
15379
15380 print_uint32_t(obj->commandBufferCount, "commandBufferCount", 0);
15381
15382 INDENT(-4);
15383 PRINT_SPACE
15384 if (commaNeeded)
15385 _OUT << "}," << std::endl;
15386 else
15387 _OUT << "}" << std::endl;
15388 }
15389
print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj,const std::string & s,bool commaNeeded=true)15390 static void print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj, const std::string &s,
15391 bool commaNeeded = true)
15392 {
15393 PRINT_SPACE
15394 _OUT << "{" << std::endl;
15395 INDENT(4);
15396
15397 print_VkStructureType(obj.sType, "sType", 1);
15398
15399 if (obj.pNext)
15400 {
15401 dumpPNextChain(obj.pNext);
15402 }
15403 else
15404 {
15405 PRINT_SPACE
15406 _OUT << "\"pNext\":"
15407 << "\"NULL\""
15408 << "," << std::endl;
15409 }
15410
15411 // CTS : required value
15412 PRINT_SPACE _OUT << "\""
15413 << "renderPass"
15414 << "\""
15415 << " : " << obj.renderPass.getInternal() << "," << std::endl;
15416
15417 print_uint32_t(obj.subpass, "subpass", 1);
15418
15419 // CTS : required value
15420 PRINT_SPACE _OUT << "\""
15421 << "framebuffer"
15422 << "\""
15423 << " : "
15424 << "\""
15425 << "\"," << std::endl;
15426
15427 print_VkBool32(obj.occlusionQueryEnable, "occlusionQueryEnable", 1);
15428
15429 print_VkQueryControlFlags(obj.queryFlags, "queryFlags", 1);
15430
15431 print_VkQueryPipelineStatisticFlags(obj.pipelineStatistics, "pipelineStatistics", 0);
15432
15433 INDENT(-4);
15434 PRINT_SPACE
15435 if (commaNeeded)
15436 _OUT << "}," << std::endl;
15437 else
15438 _OUT << "}" << std::endl;
15439 }
print_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo * obj,const std::string & s,bool commaNeeded=true)15440